search pid whether exists or not

This commit is contained in:
Ricardo_Cui
2021-02-18 17:59:08 +08:00
committed by Gitee
parent 62eb169b09
commit 67b1874605

View File

@ -129,10 +129,11 @@ class Kernel(BaseComponent):
raise Exception(ErrorCode.GAUSS_516["GAUSS_51610"] %
"instance" + " Error: \n%s." % output)
if output.find("No such process") > 0:
cmd = "ps c -eo pid,euid,cmd | grep gaussdb | grep -v grep \
| awk '{if($2 == curuid && $1!=\"-n\") print \"/proc/\"$1\"/cwd\"}' \
curuid=`id -u`| xargs ls -l | awk '{if ($NF==\"%s\") print $(NF-2)}' \
| awk -F/ '{print $3 }'" % (self.instInfo.datadir)
cmd = "ps c -eo pid,euid,cmd | grep gaussdb | grep -v grep | " \
"awk '{if($2 == curuid && $1!=\"-n\") " \
"print \"/proc/\"$1\"/cwd\"}' curuid=`id -u`|" \
" xargs ls -l |awk '{if ($NF==\"%s\") print $(NF-2)}' | " \
"awk -F/ '{print $3 }'" % (self.instInfo.datadir)
(status, rightpid) = subprocess.getstatusoutput(cmd)
if rightpid or status != 0:
GaussLog.exitWithError(output)