Bug 1101520
| Summary: | RMI pealing a non-string message results in exception instead of propagating error to task result | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Community] Gofer | Reporter: | mkovacik | ||||
| Component: | gofer-plugins | Assignee: | Jeff Ortel <jortel> | ||||
| Status: | NEW --- | QA Contact: | |||||
| Severity: | unspecified | Docs Contact: | |||||
| Priority: | unspecified | ||||||
| Version: | 1.0 | ||||||
| Target Milestone: | --- | ||||||
| Target Release: | --- | ||||||
| Hardware: | Unspecified | ||||||
| OS: | Unspecified | ||||||
| Whiteboard: | |||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||
| Doc Text: | Story Points: | --- | |||||
| Clone Of: | Environment: | ||||||
| Last Closed: | Type: | Bug | |||||
| Regression: | --- | Mount Type: | --- | ||||
| Documentation: | --- | CRM: | |||||
| Verified Versions: | Category: | --- | |||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||
| Embargoed: | |||||||
| Attachments: |
|
||||||
reset QA Contact to default. |
Created attachment 899488 [details] stack dump and related task Description of problem: When a consumer participates on an async task such as performing a repo binding and responds with invalid message the task never errors-out although a stack trace can be seen in the logs (see the attachment). This happens for instance if the consumer (by adopter's mistake) sends a response with a message attribute not explicitly serialized: if type(RMI['message']) is dict # i.e. no json.dumps() was applied on the message attribute value Version-Release number of selected component (if applicable): [root@ec2-79-125-97-56 ~]# rpm -qa | grep gofer python-gofer-qpid-1.0.13-1.fc20.noarch python-gofer-1.0.13-1.fc20.noarch gofer-1.0.13-1.fc20.noarch How reproducible: always Steps to Reproduce: 1. register a consumer with wrong implementation of the RMI messages handling with no `json.dumps(message)` called 2. perform an async task involving consumer interaction such as bind repo Actual results: The exception is not propagated to related Pulp task error attribute and thus it never really terminates Expected results: Exception is propagated into related task error attribute signaling bad processing status back to pulp Additional info: