The python neutron client for the V2 API expects the neutron API to send information back such as the type and detail of the exception the body of the message (serialized as a dict). See exception_handler_v20 in client.py. However, the neutron v2 api only returns the exception message. This means that the client can only propagate up a generic NeutronClientException exceptions rather than more specific ones related to the actual problem.
All of the necessary information is present in the v2 api resource class at the point the webob exception is raised to include at least the type of the exception (detail appears not to be used in neutron exceptions) so the format of the message returned should be changed to include a type field and a message field rather than just the message.
Fix proposed to branch: master /review. openstack. org/47351
Review: https:/