ironic/releasenotes/notes/fix-rpc-exceptions-12c70eb6ba177e39.yaml
Vladyslav Drok bbbe0012d8 Make all IronicExceptions RPC-serializable
Currently, if a random object is passed to the IronicException
constructor, and then such exception needs to be sent over RPC,
its serialization fails. In case of this message was supposed
to be sent from conductor to API as response to an RPC call,
API times out waiting for response and throws HTTP 500 error.
This change makes sure that everything passed to the exception's
constructor in kwargs is serializable, otherwise it's dropped
from kwargs.

Co-Authored-By: Richard Pioso <richard.pioso@dell.com>
Closes-Bug: #1639982
Change-Id: Icc153c6eefec7bd1451bc2110f742ae0241d49a1
2016-11-30 11:36:32 +02:00

10 lines
511 B
YAML

---
fixes:
- Ironic exceptions that contained arbitrary objects in kwargs and were sent
via RPC were causing oslo_messaging serializer to fail. This was leading
to 500 errors from ironic API, timing out waiting for response from the
conductor. Starting with this release, all non-serializable objects
contained in an exception's kwargs are dropped. If the error is going to
be returned by the service will depend on the configuration option
``[DEFAULT]fatal_exception_format_errors``.