[ https://issues.apache.org/jira/browse/AMQ-8425?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17476527#comment-17476527 ]
ASF subversion and git services commented on AMQ-8425: ------------------------------------------------------ Commit c246e0926c5f803341224000fe4391cdb3f00d76 in activemq's branch refs/heads/main from Jean-Baptiste Onofré [ https://gitbox.apache.org/repos/asf?p=activemq.git;h=c246e09 ] [AMQ-8425] Get process from any user in bin/activemq script > Linux start script doesn't work depending of ps command version > --------------------------------------------------------------- > > Key: AMQ-8425 > URL: https://issues.apache.org/jira/browse/AMQ-8425 > Project: ActiveMQ > Issue Type: Bug > Components: Broker > Affects Versions: 5.16.3 > Reporter: Jean-Baptiste Onofré > Assignee: Jean-Baptiste Onofré > Priority: Major > Fix For: 5.17.0, 5.16.4 > > > bin/activemq, line 485 reads: > local RET="`ps -o "pid,args" | grep "^\s*$activemq_pid\s.*java"`" > The problem is (from ps man page): > "By default, ps selects all processes with the same effective user > ID (euid=EUID) as the current user and associated with the same > terminal as the invoker." > Thus, the script essentially will ONLY find a running process > that has been started by the SAME LOGIN-SESSION. > I would say, that is rarely (if ever) the case in real-world scenarios. > For example, you login to your app-server and start ActiveMQ, then logout. > At a later point, you login again (new session) and try to stop ActiveMQ. > But unexpectedly, nothing happens > The fix was simple, in the line above, add the '-e' flag: > local RET="`ps -eo "pid,args" | grep "^\s*$activemq_pid\s.*java"`" > ps -e means it will list ALL processes on the host. > Then it works as expected. -- This message was sent by Atlassian Jira (v8.20.1#820001)