Bug 702275

Summary: [vdsm] vdsm doesn't terminate on SIGTERM / sigusr1
Product: Red Hat Enterprise Linux 6 Reporter: David Naori <dnaori>
Component: vdsmAssignee: Federico Simoncelli <fsimonce>
Status: CLOSED ERRATA QA Contact: yeylon <yeylon>
Severity: high Docs Contact:
Priority: unspecified    
Version: 6.1CC: abaron, bazulay, danken, dnaori, hateya, iheim, ilvovsky, jlibosva, mgoldboi, mkenneth, srevivo, tdosek, ykaul
Target Milestone: rcKeywords: Regression, TestBlocker
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: vdsm-4.9-65.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-12-06 07:17:34 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
full log none

Description David Naori 2011-05-05 09:09:19 UTC
Created attachment 497013 [details]
full log

Description of problem:
when spm-protect trying to fence vdsm with /bin/kill -USR1 PID, vdsm hangs forever.

MainThread::INFO::2011-05-05 11:57:54,000::dispatcher::94::Storage.Dispatcher.Protect::(run) Run and protect: prepareForShutdown, args: ()
.....

MainThread::ERROR::2011-05-05 11:57:58,152::vdsm::74::vds::(run) Traceback (most recent call last):
  File "/usr/share/vdsm//vdsm", line 72, in run
    serve_clients(log)
  File "/usr/share/vdsm//vdsm", line 41, in serve_clients
    cif.serve()
  File "/usr/share/vdsm/clientIF.py", line 283, in serve
    self.server.serve_forever()
  File "/usr/lib64/python2.6/SocketServer.py", line 224, in serve_forever
    r, w, e = select.select([self], [], [], poll_interval)
error: (4, 'Interrupted system call')
...

Version-Release number of selected component (if applicable):
vdsm-4.9-64.el6.x86_64


Steps to Reproduce:
1.kill -USR1 `cat /var/run/vdsm/vdsmd.pid`

Actual results:
vdsm hangs forever.

full vdsm.log attached.

Comment 1 Federico Simoncelli 2011-05-09 08:03:20 UTC
Notes about testing:
 - SIGTERM should stop vdsm
 - SIGUSR1 should stop just the SPM functionality

http://gerrit.usersys.redhat.com/373

commit e785a8c05b44fcffcb8fd23ad5029b0fb9c99963
Author: Federico Simoncelli <fsimonce>
Date:   Fri May 6 11:23:09 2011 +0100

    BZ#702275 VDSM must terminate on SIGTERM
    
    Change-Id: Id47895f0ea889e4d6ea5133666c1c41013f7091e
    Reviewed-on: http://gerrit.usersys.redhat.com/373
    Tested-by: Dan Kenigsberg <danken>
    Reviewed-by: Dan Kenigsberg <danken>

Comment 3 Tomas Dosek 2011-05-16 08:04:59 UTC
Verified - vdsm-4.9-65.el6.x86_64 - works as described in #1 by Federico Simoncelli - on SIGTERM the vdsm stops, on SIGUSR1 only SPM functionality stops.

Comment 4 errata-xmlrpc 2011-12-06 07:17:34 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHEA-2011-1782.html