screen -X kill won't stop tr-api and tr-cond in devstack

Bug #1350389 reported by Doug Shelley
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack DBaaS (Trove)
Fix Released
Low
Doug Shelley

Bug Description

This was originally filed as a devstack bug - https://bugs.launchpad.net/devstack/+bug/1349844

However, investigation determined that the issue is that the Trove API and Conductor processes don't respond to SIGHUP properly. This is causing the screen...-X kill issued by unstack.sh to not kill these processes and they end up orphaned after unstack.

The fix is to merge the latest oslo-incubator version of openstack/common/services.py into Trove. It contained a fix for this issue - see https://github.com/openstack/oslo-incubator/commit/37e46bbfe47eaa019689869a1947b0fc63f0f367#diff-49ecd82bf041c1fd494a0bc4a96782de

Doug Shelley (0-doug)
Changed in trove:
assignee: nobody → Doug Shelley (0-doug)
Doug Shelley (0-doug)
description: updated
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to trove (master)

Fix proposed to branch: master
Review: https://review.openstack.org/110718

Changed in trove:
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to trove (master)

Reviewed: https://review.openstack.org/110718
Committed: https://git.openstack.org/cgit/openstack/trove/commit/?id=94a50672cf00798d7d8d10aea21a2371a51471df
Submitter: Jenkins
Branch: master

commit 94a50672cf00798d7d8d10aea21a2371a51471df
Author: Doug Shelley <email address hidden>
Date: Wed Jul 30 12:41:02 2014 -0400

    Sync service.py from oslo-incubator with deps

    devstack/unstack.sh doesn't currently work for the conductor
    and api processes because they aren't handling KILL properly.
    This is due to oslo bug 1263122. This commit syncs the fix for
    that bug (with dependency on systemd.py).

    Changes:

    service.py
    ----------
    5f12bba Implement stop method in ProcessLauncher
    f718e40 Remove duplicated "caught" message
    356ecd4 Move notification point to a better place
    e2634a7 Add missing _LI for LOG.info in service module
    53e1214 notify calling process we are ready to serve
    a6fec43 Reap child processes gracefully if greenlet thread gets killed
    fcf517d Update oslo log messages with translation domains
    1e70078 Revert "service: replace eventlet event by threading"
    0644073 Simplify launch method
    8b2b0b7 Use hacking import_exceptions for gettextutils._
    37e46bb disable SIGHUP restart behavior in foreground
    f08f6ba service: replace eventlet event by threading
    32cd4c0 Allow configurable ProcessLauncher liveness check
    12bcdb7 Remove vim header
    96a2d4e os._exit in _start_child may cause unexpected exception
    1771a77 Adjust import order according to PEP8 imports rule
    3110c0f Use multiprocessing.Event to ensure services have started
    b5fba9e Move comment in service.py to correct location

    systemd.py
    ----------
    17c4e21 Fix docstring indentation in systemd
    667d1ba Fixed spelling error - occured to occurred
    53e1214 notify calling process we are ready to serve

    Change-Id: I2005027f737fc9f81a591f1830c50cf7144cfec2
    Closes-bug: 1350389

Changed in trove:
status: In Progress → Fix Committed
Changed in trove:
importance: Undecided → Low
milestone: none → juno-3
Thierry Carrez (ttx)
Changed in trove:
status: Fix Committed → Fix Released
Thierry Carrez (ttx)
Changed in trove:
milestone: juno-3 → 2014.2
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.