This is an automated email from the ASF dual-hosted git repository.

gabriel pushed a commit to branch 4.11
in repository https://gitbox.apache.org/repos/asf/cloudstack.git


The following commit(s) were added to refs/heads/4.11 by this push:
     new f7327c7  systemd: Fix -Dpid arg passing to systemd usage service 
(#3210)
f7327c7 is described below

commit f7327c745768f27ccfe90bf7b52b7b2fccaff59d
Author: Rohit Yadav <ro...@apache.org>
AuthorDate: Thu Mar 14 17:49:12 2019 +0530

    systemd: Fix -Dpid arg passing to systemd usage service (#3210)
    
    * systemd: Fix -Dpid arg passing to systemd usage service
    
    This fixes regression introduced by refactoring PR #3163 where `-Dpid`
    was incorrectly passed string `$$` instead of parent PID integer.
    
    Signed-off-by: Rohit Yadav <rohit.ya...@shapeblue.com>
    
    * fix systemd limitation, exec using /bin/sh instead and wrap in ${} syntax
    
    
https://www.freedesktop.org/software/systemd/man/systemd.service.html#Command%20lines
    
    Signed-off-by: Rohit Yadav <rohit.ya...@shapeblue.com>
    
    * usage: don't hide exception from Gabriel's 
https://github.com/apache/cloudstack/pull/3207/files#diff-062fcf5ae32de59dfd6cd4f780e1d7cd
    
    Signed-off-by: Rohit Yadav <rohit.ya...@shapeblue.com>
---
 packaging/systemd/cloudstack-usage.default | 5 ++++-
 packaging/systemd/cloudstack-usage.service | 3 ++-
 usage/src/com/cloud/usage/UsageServer.java | 6 +-----
 3 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/packaging/systemd/cloudstack-usage.default 
b/packaging/systemd/cloudstack-usage.default
index 26f5528..089f3ee 100644
--- a/packaging/systemd/cloudstack-usage.default
+++ b/packaging/systemd/cloudstack-usage.default
@@ -15,8 +15,11 @@
 # specific language governing permissions and limitations
 # under the License.
 
-JAVA_OPTS="-Dpid=$$ -Xms256m -Xmx2048m"
+JAVA_OPTS="-Xms256m -Xmx2048m"
 
 
CLASSPATH="/usr/share/cloudstack-usage/*:/usr/share/cloudstack-usage/lib/*:/usr/share/cloudstack-mysql-ha/lib/*:/etc/cloudstack/usage:/usr/share/java/mysql-connector-java.jar"
 
 JAVA_CLASS=com.cloud.usage.UsageServer
+
+# Enable the following to enable remote socket based debugging:
+#JAVA_DEBUG="-agentlib:jdwp=transport=dt_socket,address=8001,server=y,suspend=n"
diff --git a/packaging/systemd/cloudstack-usage.service 
b/packaging/systemd/cloudstack-usage.service
index f887486..8d9dff2 100644
--- a/packaging/systemd/cloudstack-usage.service
+++ b/packaging/systemd/cloudstack-usage.service
@@ -24,7 +24,8 @@ After=network.target network-online.target
 [Service]
 Type=simple
 EnvironmentFile=/etc/default/cloudstack-usage
-ExecStart=/usr/bin/java $JAVA_OPTS -cp $CLASSPATH $JAVA_CLASS
+Environment=JAVA_PID=$$
+ExecStart=/bin/sh -ec '/usr/bin/java -Dpid=${JAVA_PID} $JAVA_OPTS $JAVA_DEBUG 
-cp $CLASSPATH $JAVA_CLASS'
 Restart=always
 RestartSec=10s
 
diff --git a/usage/src/com/cloud/usage/UsageServer.java 
b/usage/src/com/cloud/usage/UsageServer.java
index df3f374..5e8a69d 100644
--- a/usage/src/com/cloud/usage/UsageServer.java
+++ b/usage/src/com/cloud/usage/UsageServer.java
@@ -51,11 +51,7 @@ public class UsageServer implements Daemon {
 
         appContext = new 
ClassPathXmlApplicationContext("usageApplicationContext.xml");
 
-        try {
-            ComponentContext.initComponentsLifeCycle();
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
+        ComponentContext.initComponentsLifeCycle();
 
         mgr = appContext.getBean(UsageManager.class);
 

Reply via email to