Description of problem: While executing sosreport on RHEL 6.4 machine "glusterfsd: no process killed" message is displayed.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. execute "sosreport"
"glusterfsd: no process killed" displayed.
[root@rhs-gp-srv14 ~]# sosreport
sosreport (version 2.2)
This utility will collect some detailed information about the
hardware and setup of your Red Hat Enterprise Linux system.
The information is collected and an archive is packaged under
/tmp, which you can send to a support representative.
Red Hat Enterprise Linux will use this information for diagnostic purposes ONLY
and it will be considered confidential information.
This process may take a while to complete.
No changes will be made to your system.
Press ENTER to continue, or CTRL-C to quit.
Please enter your first initial and last name [rhs-gp-srv14]:
Please enter the case number that you are generating this report for [None]: client
glusterfsd: no process killed <<<<<<<<<<<<<<<<<<<<<<
Running plugins. Please wait ...
Completed [53/53] ...
Creating compressed archive...
Your sosreport has been generated and saved in:
The md5sum is: e7f7b382864f38ccee1c5b768f326cde
Please send this file to your support representative.
can we do 'ps aux| grep glusterfs| grep -v grep' to check the process is running before issuing the signal?
Better to use pgrep/pkill - we try to avoid launching pipelines from sos (or simply suppress the error from the attempted kill).
This happens because the gluster plugin decided to roll its own callout mechanism:
#self.collectExtOutput("killall -USR1 glusterfs glusterfsd")
os.system("killall -USR1 glusterfs glusterfsd");
Don't do that: use the already provided PluginBase APIs:
In this instance the first is probably correct since the plugin doesn't care about storing the output in the report.
self.callExtProg("killall -USR1 glusterfs glusterfsd")
Should do what you want.
I've fixed this upstream on master:
Author: Bryn M. Reeves <firstname.lastname@example.org>
Date: Tue Apr 8 13:48:40 2014 +0100
Replace os.system() in gluster plugin with self.check_ext_prog()
Plugins should not open-code calls to external commands. Use the
build-in check_ext_prog() interface instead and test for success
before attempting to collect the statedump files.
Signed-off-by: Bryn M. Reeves <email@example.com>
The RHEL6 version will be slightly different as we don't currently have checkExtProg(). We can either backport that (trivial) or adapt the gluster change to use callExtProg() and check the returned status.
A partner reports the
glusterfs: no process killed
glusterfsd: no process killed
on a rhel6.6beta.
I am irritated that this bz is for 6.4, yet component was set to RHS.
Should the component be changed, or a different bz be opened?
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.