Autoregistration is always attempted, whatever the post-start scripts return

Bug #444504 reported by Thierry Carrez on 2009-10-06
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
eucalyptus (Ubuntu)
Low
Thierry Carrez
Karmic
Low
Thierry Carrez

Bug Description

20091006 CD install, eucalyptus 1.6~bzr912-0ubuntu1
Autoregistration works, however strange lines appear in /var/log/syslog:

init: eucalyptus-cc post-start process (959) terminated with status 1
init: eucalyptus-cloud post-start process (896) terminated with status 1
init: eucalyptus-sc post-start process (897) terminated with status 1
init: eucalyptus-walrus post-start process (898) terminated with status 1

Instrumenting the jobs, here is what happens on a eucalyptus start:
eucalyptus-sc poststart begin
eucalyptus-cloud poststart begin
eucalyptus-walrus poststart begin
[sc, cloud and walrus loop several times waiting for the test to succeed]
eucalyptus-cc poststart begin
[cc poststart exits 1 immediately]
[after 27 tries, eucalyptus-cloud poststart exits with 0, success!]
eucalyptus-cc-registration begin
eucalyptus-cc-registration end [successful cc registration]
[sc and walrus poststart still loop, then after 60 tries:]
eucalyptus-walrus poststart exit 1
eucalyptus-walrus-reg begin
eucalyptus-sc poststart exit 1
eucalyptus-sc-reg begin
eucalyptus-sc-reg end [successful sc registration]
eucalyptus-walrus-reg end [successful walrus registration]

Several issues here:
* eucalyptus-{cc,sc,cloud,walrus} are considered started even if their post-start script exits with 1, so registration runs in all cases
* eucalyptus-cc has a typo that makes it always return 1 immediately (| grep on a separate line)
* The post-start test in eucalyptus-{sc,walrus} always fails, so it always returns 1 at the end of the timeout

Thierry Carrez (ttx) on 2009-10-06
Changed in eucalyptus (Ubuntu):
importance: Undecided → Medium
Thierry Carrez (ttx) wrote :

To solve issue #1, we can use "stop" without arguments in post-start instead of (or in addition to) exit 1.
Issue #2 is trivial
To solve issue #3 we need a working way to tell that the sc and walrus have been started.
In my testing http://$IP_ADDR:8773/services/Heartbeat doesn't return anything (while I can run instances alright)

Changed in eucalyptus (Ubuntu):
assignee: nobody → Thierry Carrez (ttx)
status: New → Triaged
Thierry Carrez (ttx) wrote :

Heartbeat not returning anything is upstream bug 443325, fixed in rev913. Unfortunately that revision contains multiple fixes.

Thierry Carrez (ttx) wrote :

Splitting bugs, now that I understand the issues better.

#1: This is this bug
#2
: This is now filed as bug 444560
#3: Heartbeat not returning anything is bug 443325

Changed in eucalyptus (Ubuntu):
importance: Medium → Low
Thierry Carrez (ttx) wrote :

Note that if we add "stop" calls in post-start scripts to prevent the "started" event from being emitted, we need to fix bug 443325 before (otherwise eucalyptus would no longer try to register sc/walrus)

summary: - Autoregistration through upstart, while working, uses strange ways
+ Autoregistration is always attempted, whatever the post-start scripts
+ return
Thierry Carrez (ttx) on 2009-10-07
Changed in eucalyptus (Ubuntu Karmic):
status: Triaged → In Progress
Thierry Carrez (ttx) on 2009-10-07
Changed in eucalyptus (Ubuntu Karmic):
status: In Progress → Fix Committed
Changed in eucalyptus (Ubuntu Karmic):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers