fuel-plugin-opendaylight: Upstart service: Respawn 21/25321/1
authorAlexandru Avadanii <Alexandru.Avadanii@enea.com>
Thu, 1 Dec 2016 12:24:03 +0000 (13:24 +0100)
committerAlexandru Avadanii <Alexandru.Avadanii@enea.com>
Thu, 1 Dec 2016 12:24:03 +0000 (13:24 +0100)
On arm64, JVM sometimes (~10%) crashes at the very start, due to
JIT issues in our openjdk8 package.

We can't really solve the JVM on arm64 issues in the near future,
so we will try to work around the issue by configuring the ODL
service as respawn-able (see [1] for more details).

Note: This is specific to Ubuntu Trusty (14.04), which uses upstart,
for Ubuntu Xenial (or anything else >14.x), which uses systemd,
a different, equivalent mechanism should be used.

[1] http://upstart.ubuntu.com/cookbook/#respawn

JIRA: ARMBAND-134

Change-Id: I0dc82e4a6d0cc485e981477e6a25dbad95db930b
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
patches/fuel-plugin-opendaylight/0004-ODL-Upstart-service-Respawn-on-crash.patch [new file with mode: 0644]

diff --git a/patches/fuel-plugin-opendaylight/0004-ODL-Upstart-service-Respawn-on-crash.patch b/patches/fuel-plugin-opendaylight/0004-ODL-Upstart-service-Respawn-on-crash.patch
new file mode 100644 (file)
index 0000000..6a9150c
--- /dev/null
@@ -0,0 +1,38 @@
+From: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
+Date: Thu, 1 Dec 2016 13:12:35 +0100
+Subject: [PATCH] ODL Upstart service: Respawn on crash
+
+On arm64, JVM sometimes (~10%) crashes at the very start, due to
+JIT issues in our openjdk8 package.
+
+We can't really solve the JVM on arm64 issues in the near future,
+so we will try to work around the issue by configuring the ODL
+service as respawn-able (see [1] for more details).
+
+Note: This is specific to Ubuntu Trusty (14.04), which uses upstart,
+for Ubuntu Xenial (or anything else >14.x), which uses systemd,
+a different, equivalent mechanism should be used.
+
+[1] http://upstart.ubuntu.com/cookbook/#respawn
+
+JIRA: ARMBAND-134
+
+Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
+---
+ odl_package/ubuntu/opendaylight | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/odl_package/ubuntu/opendaylight b/odl_package/ubuntu/opendaylight
+index fd84376..b25e3b8 100644
+--- a/odl_package/ubuntu/opendaylight
++++ b/odl_package/ubuntu/opendaylight
+@@ -8,6 +8,9 @@ stop on runlevel [!2345]
+ setgid odl
+ setuid odl
+
++respawn
++respawn limit 20 20
++
+ env KARAF_HOME="/opt/opendaylight"
+ env JAVA_OPTS="-server -Xms1g -Xmx2g -XX:+UseG1GC -XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass -Dcom.sun.management.jmxremote"
+ env OPTS="-Dkaraf.startLocalConsole=false -Dkaraf.startRemoteShell=true"