Browse code

Workaround potential failure to shutdown services

Kill them twice to make sure they're good'n'dead. There is a supposed
fix to oslo-incubator code, but we're working around that here in the
meantime with this change.

This returned in Liberty.

Change-Id: I02a7af995dc7de857c4efcf2cef2f95d357c007a
Related-Bug: #1446583

Dan Smith authored on 2015/04/24 01:41:06
Showing 1 changed files
... ...
@@ -1476,6 +1476,12 @@ function stop_process {
1476 1476
         # Kill via pid if we have one available
1477 1477
         if [[ -r $SERVICE_DIR/$SCREEN_NAME/$service.pid ]]; then
1478 1478
             pkill -g $(cat $SERVICE_DIR/$SCREEN_NAME/$service.pid)
1479
+            # TODO(danms): Remove this double-kill when we have
1480
+            # this fixed in all services:
1481
+            # https://bugs.launchpad.net/oslo-incubator/+bug/1446583
1482
+            sleep 1
1483
+            # /bin/true becakse pkill on a non existant process returns an error
1484
+            pkill -g $(cat $SERVICE_DIR/$SCREEN_NAME/$service.pid) || /bin/true
1479 1485
             rm $SERVICE_DIR/$SCREEN_NAME/$service.pid
1480 1486
         fi
1481 1487
         if [[ "$USE_SCREEN" = "True" ]]; then