Bug 1288637 - gear start aborts prematurely if a single cartridge fails to start
Summary: gear start aborts prematurely if a single cartridge fails to start
Keywords:
Status: CLOSED DEFERRED
Alias: None
Product: OpenShift Online
Classification: Red Hat
Component: Containers
Version: 2.x
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: ---
: ---
Assignee: Sally
QA Contact: Chao Yang
URL:
Whiteboard:
Depends On:
Blocks: 1277547
TreeView+ depends on / blocked
 
Reported: 2015-12-04 20:15 UTC by Andy Grimm
Modified: 2019-09-12 09:29 UTC (History)
9 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-02-01 21:51:40 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Andy Grimm 2015-12-04 20:15:57 UTC
Description of problem:

When a gear contains multiple cartridges, the start process exits completely when a single cartridge's start command returns a non-zero exit code.  This can leads to situations where an app is rendered non-functional due to a bug in a secondary cartridge.

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

rubygem-openshift-origin-node-1.38.4-1.el6oso.noarch

How reproducible:

often 

Steps to Reproduce:
1. create an app with several cartridges.  For example, php, mysql, and https://github.com/wshearn/openshift-cartridge-osbs-client.git
2. edit backup-client/bin/control and remove the "|| true" from the curl command lines
3. stop the gear
4. start the gear

Actual results:

In the application we observed, the mysql cartridge started first, followed by the backup-client cartridge.  The backup-client cartridge failed (because there was no server configured for curl to connect to), and the php cartridge's start script was never called.

Expected results:

The php cartridge should start regardless of whether the backup-client cartridge starts successfully.

Comment 2 Miciah Dashiel Butler Masters 2015-12-11 20:06:02 UTC
Does it make sense in general to start the framework when the database fails to start?

Could you use Configure-Order in your custom cartridge's manifest to start the framework cartridge first? Would that be a satisfactory solution?

Comment 3 Andy Grimm 2016-01-29 16:32:37 UTC
We had a face-to-face discussion about this one, but I don't recall the specifics.  This seems to be a pretty rare case, so I think we can defer it for now.  I'll re-raise it if we see other occurrences.

Comment 4 Timothy Williams 2016-02-01 21:51:40 UTC
Closing this for now as per Andy's comment. Lets re-open this if we see any other interesting occurrences.


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