ambari-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dmitry Lysnichenko (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (AMBARI-19768) Broken kill_process_with_children shell single liner
Date Wed, 08 Feb 2017 11:47:41 GMT

     [ https://issues.apache.org/jira/browse/AMBARI-19768?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Dmitry Lysnichenko updated AMBARI-19768:
----------------------------------------
    Description: 
{code}    CMD = """ps xf | awk -v PID=""" + str(pid) + \
          """ ' $1 == PID { P = $1; next } P && /_/ { P = P " " $1;""" + \
          """K=P } P && !/_/ { P="" }  END { print "kill -""" \
          + str(signal) + """ "K }' | sh """{code}
*Example*
{code}((sleep 3141592) & ((sleep 3141592) & (sleep 3141592))

ps xf

 3231 ?        Ss     0:01  \_ sshd: root@pts/0 
 3233 pts/0    Ss     0:00  |   \_ -bash
17984 pts/0    S+     0:00  |       \_ -bash
17985 pts/0    S+     0:00  |           \_ sleep 3141592
17986 pts/0    S+     0:00  |           \_ -bash
17987 pts/0    S+     0:00  |               \_ sleep 3141592
17988 pts/0    S+     0:00  |               \_ sleep 3141592
17738 ?        Ss     0:00  \_ sshd: root@pts/1 
17740 pts/1    Ss     0:00      \_ -bash
17989 pts/1    R+     0:00          \_ ps xf

ps xf | awk -v PID=17987 ' $1 == PID { P = $1; next } P && /_/ { P = P " " $1;K=P
} P && !/_/ { P="" }  END { print "kill "K }'

(PID=17987)
result : "kill 17987 17988 17738 17740 18083 18084"
but right will only "kill 17987"

(PID=17985)
result : "kill 17985 17986 17987 17988 17738 17740 18697 18698"
right : "kill 17985"

(PID=17986)
result : "kill 17986 17987 17988 17738 17740 18980 18981"
right : "kill 17986 17987 17988"
{code}

  was:


*Steps*
# Deploy HDP-2.5.0.0 with Ambari 2.4.1.0
# Upgrade ambari to 2.5.0.0-481 (I did not register Falcon library, as the jar was already
present in /var/lib/ambari-server/resources/je-5.0.73.jar on Ambari server node)
# Register HDP-2.6.0.0-216
# Start package installation

*Result:*
Got below errors:
{code}
2016-12-16 13:47:10,419|INFO|MainThread|machine.py:145 - run()|CRITICAL:yum.main:
2016-12-16 13:47:10,419|INFO|MainThread|machine.py:145 - run()|
2016-12-16 13:47:10,419|INFO|MainThread|machine.py:145 - run()|Error: rpmdb open failed
2016-12-16 13:47:10,420|INFO|MainThread|machine.py:145 - run()|Traceback (most recent call
last):
2016-12-16 13:47:10,420|INFO|MainThread|machine.py:145 - run()|File "/var/lib/ambari-agent/cache/custom_actions/scripts/install_packages.py",
line 166, in actionexecute
2016-12-16 13:47:10,420|INFO|MainThread|machine.py:145 - run()|ret_code = self.install_packages(package_list)
2016-12-16 13:47:10,420|INFO|MainThread|machine.py:145 - run()|File "/var/lib/ambari-agent/cache/custom_actions/scripts/install_packages.py",
line 400, in install_packages
2016-12-16 13:47:10,420|INFO|MainThread|machine.py:145 - run()|if not verifyDependencies():
2016-12-16 13:47:10,421|INFO|MainThread|machine.py:145 - run()|File "/usr/lib/python2.6/site-packages/resource_management/libraries/functions/packages_analyzer.py",
line 311, in verifyDependencies
2016-12-16 13:47:10,421|INFO|MainThread|machine.py:145 - run()|code, out = rmf_shell.checked_call(cmd,
sudo=True)
2016-12-16 13:47:10,421|INFO|MainThread|machine.py:145 - run()|File "/usr/lib/python2.6/site-packages/resource_management/core/shell.py",
line 72, in inner
2016-12-16 13:47:10,421|INFO|MainThread|machine.py:145 - run()|result = function(command,
**kwargs)
2016-12-16 13:47:10,421|INFO|MainThread|machine.py:145 - run()|File "/usr/lib/python2.6/site-packages/resource_management/core/shell.py",
line 102, in checked_call
2016-12-16 13:47:10,422|INFO|MainThread|machine.py:145 - run()|tries=tries, try_sleep=try_sleep,
timeout_kill_strategy=timeout_kill_strategy)
2016-12-16 13:47:10,422|INFO|MainThread|machine.py:145 - run()|File "/usr/lib/python2.6/site-packages/resource_management/core/shell.py",
line 150, in _call_wrapper
2016-12-16 13:47:10,422|INFO|MainThread|machine.py:145 - run()|result = _call(command, **kwargs_copy)
2016-12-16 13:47:10,422|INFO|MainThread|machine.py:145 - run()|File "/usr/lib/python2.6/site-packages/resource_management/core/shell.py",
line 303, in _call
2016-12-16 13:47:10,423|INFO|MainThread|machine.py:145 - run()|raise ExecutionFailed(err_msg,
code, out, err)
2016-12-16 13:47:10,423|INFO|MainThread|machine.py:145 - run()|ExecutionFailed: Execution
of '/usr/bin/yum -d 0 -e 0 check dependencies' returned 1. error: rpmdb: BDB0113 Thread/process
16016/139791567193920 failed: BDB1507 Thread died in Berkeley DB library
2016-12-16 13:47:10,424|INFO|MainThread|machine.py:145 - run()|error: db5 error(-30973) from
dbenv->failchk: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery
2016-12-16 13:47:10,424|INFO|MainThread|machine.py:145 - run()|error: cannot open Packages
index using db5 -  (-30973)
2016-12-16 13:47:10,424|INFO|MainThread|machine.py:145 - run()|error: cannot open Packages
database in /var/lib/rpm
2016-12-16 13:47:10,424|INFO|MainThread|machine.py:145 - run()|CRITICAL:yum.main:
2016-12-16 13:47:10,424|INFO|MainThread|machine.py:145 - run()|
2016-12-16 13:47:10,425|INFO|MainThread|machine.py:145 - run()|Error: rpmdb open failed
2016-12-16 13:47:10,425|INFO|MainThread|machine.py:145 - run()|Traceback (most recent call
last):
2016-12-16 13:47:10,425|INFO|MainThread|machine.py:145 - run()|File "/var/lib/ambari-agent/cache/custom_actions/scripts/install_packages.py",
line 469, in <module>
2016-12-16 13:47:10,425|INFO|MainThread|machine.py:145 - run()|InstallPackages().execute()
2016-12-16 13:47:10,425|INFO|MainThread|machine.py:145 - run()|File "/usr/lib/python2.6/site-packages/resource_management/libraries/script/script.py",
line 287, in execute
2016-12-16 13:47:10,426|INFO|MainThread|machine.py:145 - run()|method(env)
2016-12-16 13:47:10,426|INFO|MainThread|machine.py:145 - run()|File "/var/lib/ambari-agent/cache/custom_actions/scripts/install_packages.py",
line 179, in actionexecute
2016-12-16 13:47:10,426|INFO|MainThread|machine.py:145 - run()|raise Fail("Failed to distribute
repositories/install packages")
{code}





> Broken kill_process_with_children shell single liner 
> -----------------------------------------------------
>
>                 Key: AMBARI-19768
>                 URL: https://issues.apache.org/jira/browse/AMBARI-19768
>             Project: Ambari
>          Issue Type: Bug
>          Components: ambari-server
>    Affects Versions: 2.5.0
>            Reporter: Dmitry Lysnichenko
>            Assignee: Dmitry Lysnichenko
>            Priority: Critical
>             Fix For: 2.5.0
>
>         Attachments: AMBARI-19768.1.patch, AMBARI-19768.2.patch, AMBARI-19768.patch
>
>
> {code}    CMD = """ps xf | awk -v PID=""" + str(pid) + \
>           """ ' $1 == PID { P = $1; next } P && /_/ { P = P " " $1;""" + \
>           """K=P } P && !/_/ { P="" }  END { print "kill -""" \
>           + str(signal) + """ "K }' | sh """{code}
> *Example*
> {code}((sleep 3141592) & ((sleep 3141592) & (sleep 3141592))
> ps xf
>  3231 ?        Ss     0:01  \_ sshd: root@pts/0 
>  3233 pts/0    Ss     0:00  |   \_ -bash
> 17984 pts/0    S+     0:00  |       \_ -bash
> 17985 pts/0    S+     0:00  |           \_ sleep 3141592
> 17986 pts/0    S+     0:00  |           \_ -bash
> 17987 pts/0    S+     0:00  |               \_ sleep 3141592
> 17988 pts/0    S+     0:00  |               \_ sleep 3141592
> 17738 ?        Ss     0:00  \_ sshd: root@pts/1 
> 17740 pts/1    Ss     0:00      \_ -bash
> 17989 pts/1    R+     0:00          \_ ps xf
> ps xf | awk -v PID=17987 ' $1 == PID { P = $1; next } P && /_/ { P = P " " $1;K=P
} P && !/_/ { P="" }  END { print "kill "K }'
> (PID=17987)
> result : "kill 17987 17988 17738 17740 18083 18084"
> but right will only "kill 17987"
> (PID=17985)
> result : "kill 17985 17986 17987 17988 17738 17740 18697 18698"
> right : "kill 17985"
> (PID=17986)
> result : "kill 17986 17987 17988 17738 17740 18980 18981"
> right : "kill 17986 17987 17988"
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message