Bug 1012138 - parallel operations on Broker does not coalesce exit codes
Summary: parallel operations on Broker does not coalesce exit codes
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: OpenShift Online
Classification: Red Hat
Component: Pod
Version: 2.x
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: ---
: ---
Assignee: Abhishek Gupta
QA Contact: libra bugs
URL:
Whiteboard:
Depends On:
Blocks: 981780
TreeView+ depends on / blocked
 
Reported: 2013-09-25 19:42 UTC by Jhon Honce
Modified: 2015-05-15 00:21 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-10-17 13:31:20 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Jhon Honce 2013-09-25 19:42:26 UTC
Description of problem:
When the Broker uses parallel operations to command the Node, it does not handled mixed error codes from the cartridges. For example, cartridge1 returns 0 while cartridge2 return 131

The Broker reports:

Unable to complete the requested operation due to: Failed to correctly execute all parallel operations.

rather than the output from the cartridges.

Version-Release number of selected component (if applicable):


How reproducible:

always

Steps to Reproduce:
1. create a gear + 2 cartridges
2. modify the control script on one of the cartridges to client_message "testing error" and exit 255 when sent a start
3. use rhc app start

Actual results:
Unable to complete the requested operation due to: Failed to correctly execute all parallel operations.
Reference ID: 397895b040fa324515b8929df3d08a61


Expected results:
"start failed message from client"
testing error


Additional info:

Comment 1 Abhishek Gupta 2013-09-25 21:04:21 UTC
Fixed with --> https://github.com/openshift/origin-server/pull/3708

Comment 3 Jianwei Hou 2013-09-26 07:28:21 UTC
Tested on devenv_3832, issue still reproducible

steps:
1. Create a diy app with mysql and postgresql-8.2
2. Edit bin/control of mysql, add "testing error" and exit 255 to start function
3. Stop and start the app, still got:
Unable to complete the requested operation due to: Failed to correctly execute all parallel operations.
Reference ID: 82dfcaab7c58fbd4f844cdfb1c17a361

Comment 4 Abhishek Gupta 2013-10-02 22:21:29 UTC
The failure messages need to be added using "client_error" to be treated as a client failure and be displayed to the user.

Comment 5 Jianwei Hou 2013-10-08 02:31:43 UTC
(In reply to Abhishek Gupta from comment #4)
> The failure messages need to be added using "client_error" to be treated as
> a client failure and be displayed to the user.

Is this bug fixed? Didn't see any github commits updated to this bug, and I still got the same result with comment 3. My test env is devenv_3871

Comment 6 Rajat Chopra 2013-10-08 18:35:43 UTC
@jhou - comment#3 suggests that 'testing error' needs to be encapsulated as 'CLIENT_ERROR: testing error..' for it to be shown by the broker appropriately.

When the failure happens, anything reported under 'CLIENT_ERROR' is reported back. Not the rest.

Comment 7 Jianwei Hou 2013-10-09 03:23:56 UTC
@rajat Thank you, this bug is now verified on devenv_3874, the 'CLIENT_ERROR' can be reported to the end user

RESULT:
d1 stopped
testing error..


Note You need to log in before you can comment on or make changes to this bug.