<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 19:56:35 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>OpenDaylight JIRA</title>
    <link>https://jira.opendaylight.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>8.20.10</version>
        <build-number>820010</build-number>
        <build-date>22-06-2022</build-date>
    </build-info>


<item>
            <title>[CONTROLLER-1845] Karaf takes 7 minutes to start</title>
                <link>https://jira.opendaylight.org/browse/CONTROLLER-1845</link>
                <project id="10113" key="CONTROLLER">controller</project>
                    <description>&lt;p&gt;I&apos;ve been running the ODL Clustering CSIT job from stable/oxygen and analyzing failures, as part of the clustering stabilization effort.&lt;/p&gt;

&lt;p&gt;During one of these runs, the cluster fails to go to sync status after ODL is restarted (Tell based False). I looked at the node that failed to sync, and see that karaf took just a little over 7 minutes to start up for this test case.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;Here are the relevant karaf logs:&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;Jun 29, 2018 3:43:47 PM org.apache.karaf.main.Main launch&lt;br/&gt;
INFO: Installing and starting initial bundles&lt;br/&gt;
Jun 29, 2018 3:43:47 PM org.apache.karaf.main.Main launch&lt;br/&gt;
INFO: All initial bundles installed and set to start&lt;br/&gt;
Jun 29, 2018 3:43:47 PM org.apache.karaf.main.lock.SimpleFileLock lock&lt;br/&gt;
INFO: Trying to lock /tmp/karaf-0.8.3-SNAPSHOT/lock&lt;br/&gt;
Jun 29, 2018 3:43:47 PM org.apache.karaf.main.lock.SimpleFileLock lock&lt;br/&gt;
INFO: Lock acquired&lt;br/&gt;
&lt;font color=&quot;#d04437&quot;&gt;Jun 29, 2018 3:43:47 PM org.apache.karaf.main.Main$KarafLockCallback lockAquired&lt;/font&gt;&lt;br/&gt;
&lt;font color=&quot;#d04437&quot;&gt;INFO: Lock acquired. Setting startlevel to 100&lt;/font&gt;&lt;br/&gt;
&lt;font color=&quot;#d04437&quot;&gt;Jun 29, 2018 3:50:48 PM org.apache.karaf.main.Main launch&lt;/font&gt;&lt;br/&gt;
&lt;font color=&quot;#d04437&quot;&gt;INFO: Installing and starting initial bundles&lt;/font&gt;&lt;br/&gt;
Jun 29, 2018 3:50:49 PM org.apache.karaf.main.Main launch&lt;br/&gt;
INFO: All initial bundles installed and set to start&lt;br/&gt;
Jun 29, 2018 3:50:49 PM org.apache.karaf.main.lock.SimpleFileLock lock&lt;br/&gt;
INFO: Trying to lock /tmp/karaf-0.8.3-SNAPSHOT/lock&lt;br/&gt;
Jun 29, 2018 3:50:49 PM org.apache.karaf.main.lock.SimpleFileLock lock&lt;br/&gt;
INFO: Lock acquired&lt;br/&gt;
Jun 29, 2018 3:50:49 PM org.apache.karaf.main.Main$KarafLockCallback lockAquired&lt;br/&gt;
INFO: Lock acquired. Setting startlevel to 100&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;I&apos;ll also attach the (annotated) karaf log.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</description>
                <environment></environment>
        <key id="30253">CONTROLLER-1845</key>
            <summary>Karaf takes 7 minutes to start</summary>
                <type id="10104" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="5" iconUrl="https://jira.opendaylight.org/images/icons/priorities/trivial.svg">Lowest</priority>
                        <status id="5" iconUrl="https://jira.opendaylight.org/images/icons/statuses/resolved.png" description="A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.">Resolved</status>
                    <statusCategory id="3" key="done" colorName="green"/>
                                    <resolution id="10000">Done</resolution>
                                        <assignee username="sharmaarun">Arun Sharma</assignee>
                                    <reporter username="vpickard">Victor Pickard</reporter>
                        <labels>
                    </labels>
                <created>Mon, 2 Jul 2018 20:04:55 +0000</created>
                <updated>Fri, 5 Oct 2018 15:17:00 +0000</updated>
                            <resolved>Fri, 5 Oct 2018 15:17:00 +0000</resolved>
                                                                    <component>karaf</component>
                        <due></due>
                            <votes>1</votes>
                                    <watches>11</watches>
                                                                                                                                                            <comments>
                            <comment id="63851" author="vpickard" created="Mon, 2 Jul 2018 20:08:03 +0000"  >&lt;p&gt;Here are the steps in from the controller csit job for restarting ODL (Restart Odl With Tell Based False).&#160;&lt;br/&gt;
&#160;&lt;br/&gt;
1. kill -9 on karaf pid ( &apos;ps axf | grep org.apache.karaf | grep -v grep | awk &apos;{print &quot;kill -9 &quot; $1}&apos; | sh&apos; )&lt;br/&gt;
2. Verify karaf is not running&lt;br/&gt;
3. Set Tell Based to False in config file&lt;br/&gt;
4. Copy karaf logs to /tmp (mkdir -p &apos;/tmp&apos; &amp;amp;&amp;amp; rm -vrf &apos;/tmp/log&apos; &amp;amp;&amp;amp; mv -vf &apos;/tmp/karaf-0.8.3-SNAPSHOT/data/log&apos; &apos;/tmp/&apos;)&lt;br/&gt;
5. Clean the following directories&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;rm -rf /tmp/karaf-0.8.3-SNAPSHOT/tmp/&lt;/li&gt;
	&lt;li&gt;rm -rf /tmp/karaf-0.8.3-SNAPSHOT/data/&lt;/li&gt;
	&lt;li&gt;rm -rf /tmp/karaf-0.8.3-SNAPSHOT/cache/&lt;/li&gt;
	&lt;li&gt;rm -rf /tmp/karaf-0.8.3-SNAPSHOT/snapshots/&lt;/li&gt;
	&lt;li&gt;rm -rf /tmp/karaf-0.8.3-SNAPSHOT/journal/&lt;/li&gt;
	&lt;li&gt;rm -rf /tmp/karaf-0.8.3-SNAPSHOT/etc/opendaylight/current/&lt;/li&gt;
	&lt;li&gt;rm -rf /tmp/karaf-0.8.3-SNAPSHOT/etc/host.key&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;6. Copy logs back to new snapshot dir, as below: # mkdir -p &apos;/tmp/karaf-0.8.3-SNAPSHOT/data&apos; &amp;amp;&amp;amp; rm -vrf &apos;/tmp/karaf-0.8.3-SNAPSHOT/log&apos; &amp;amp;&amp;amp; mv -vf &apos;/tmp/log&apos; &apos;/tmp/karaf-0.8.3-SNAPSHOT/data/&lt;/p&gt;</comment>
                            <comment id="63852" author="vpickard" created="Mon, 2 Jul 2018 20:12:10 +0000"  >&lt;p&gt;Tom,&#160;&lt;/p&gt;

&lt;p&gt;I&apos;ll have to get this to fail again in CSIT, and will share the link to the run, which will have the karaf thread dumps you asked for to help debug this issue.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</comment>
                            <comment id="63854" author="tpantelis" created="Mon, 2 Jul 2018 21:02:22 +0000"  >&lt;p&gt;If it is due to karaf taking 7 minutes to re-install features, it does hit the disk a lot so I wonder if it&apos;s an intermittent issue with disk performance in the jenkins environment.&lt;/p&gt;</comment>
                            <comment id="63872" author="vpickard" created="Tue, 3 Jul 2018 16:23:56 +0000"  >&lt;p&gt;Would need a thread dump when this issue occurs.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;Need to find a reliable way to reproduce this issue.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;kill -3 for jvm pid will go to stdout, karaf.out&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;Did CSIT start karaf twice?&lt;/p&gt;</comment>
                            <comment id="63873" author="jluhrsen" created="Tue, 3 Jul 2018 16:35:31 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.opendaylight.org/secure/ViewProfile.jspa?name=vorburger&quot; class=&quot;user-hover&quot; rel=&quot;vorburger&quot;&gt;vorburger&lt;/a&gt;, &lt;a href=&quot;https://jira.opendaylight.org/secure/ViewProfile.jspa?name=tpantelis&quot; class=&quot;user-hover&quot; rel=&quot;tpantelis&quot;&gt;tpantelis&lt;/a&gt;, &lt;a href=&quot;https://jira.opendaylight.org/secure/ViewProfile.jspa?name=vpickard&quot; class=&quot;user-hover&quot; rel=&quot;vpickard&quot;&gt;vpickard&lt;/a&gt;,&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;which part of the karaf log in the description is &quot;weird&quot; and maybe a problem in csit. I will investigate&lt;br/&gt;
and update this jira.&lt;/p&gt;</comment>
                            <comment id="63875" author="vorburger" created="Tue, 3 Jul 2018 17:00:39 +0000"  >&lt;p&gt;I don&apos;t have the full context of what is going on here or what this CSIT does, but the first thing that pops out at me is&#160;that what is shown in the description of this issue above looks like two Karaf instances started,&#160;one at&#160;3:43:47 and then another at 3:50:48 - not one&#160;karaf took just a little over 7 minutes to start up. (Look closely,&#160;and&#160;compare it with the output of when&#160;start ODL locally - you&apos;ll find &quot;half&quot; of what is shown above.)&lt;/p&gt;

&lt;p&gt;Does this observation help you?&lt;/p&gt;</comment>
                            <comment id="63879" author="tpantelis" created="Tue, 3 Jul 2018 18:01:50 +0000"  >&lt;p&gt;yes there should only be one set. It&apos;s as if karaf was started then killed and then started again.&#160;&lt;/p&gt;</comment>
                            <comment id="63887" author="jluhrsen" created="Tue, 3 Jul 2018 21:49:18 +0000"  >&lt;p&gt;We don&apos;t have the accompanying csit (e.g. robot) logs for the karaf log in the description, but I was hoping&lt;br/&gt;
it was what we&apos;d see when I tracked down a recent example of &lt;a href=&quot;https://jira.opendaylight.org/browse/CONTROLLER-1768&quot; title=&quot;SyncStatus stays false for more than 5minutes after bringing 2 of 3 nodes down and back up.&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CONTROLLER-1768&quot;&gt;&lt;del&gt;CONTROLLER-1768&lt;/del&gt;&lt;/a&gt;. It&apos;s not.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://jira.opendaylight.org/secure/ViewProfile.jspa?name=vpickard&quot; class=&quot;user-hover&quot; rel=&quot;vpickard&quot;&gt;vpickard&lt;/a&gt;, hoping we can get another example of this karaf.log to go with the robot logs. I&apos;ll keep looking&lt;br/&gt;
myself.&lt;/p&gt;</comment>
                            <comment id="63901" author="muthukumarank" created="Wed, 4 Jul 2018 09:57:37 +0000"  >&lt;p&gt;From the logs, it is observed that there are messages&#160;of&#160;JoinSeedNodeProcess which fails with retries before all instances of Karaf Restart - org.apache.karaf.main.Main launch&lt;/p&gt;

&lt;p&gt;The order of seed-nodes must be uniform across all ODL nodes and availability of first of seed-nodes&#160; is pre-requisite. We can check if at least first condition is satisfied in the target deployment.&#160;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://jira.opendaylight.org/secure/ViewProfile.jspa?name=tpantelis&quot; class=&quot;user-hover&quot; rel=&quot;tpantelis&quot;&gt;tpantelis&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;One clarification&lt;/p&gt;

&lt;p&gt;We do not have Quarantine-based suicide and restart (QuarantinedMonitorActor) of ODL process in master - is my understanding correct ?&lt;/p&gt;

&lt;p&gt;Not seeing any such symptoms on the logs unless QuarantinedMonitorActor had been refactored into some other name retaining suicidal + restart behavior&#160;&lt;/p&gt;

&lt;p&gt;.&#160;&lt;/p&gt;</comment>
                            <comment id="63904" author="tpantelis" created="Wed, 4 Jul 2018 11:32:10 +0000"  >&lt;p&gt;The quarantined/restart mechanism is still there. But how is what you stated above relevant for this JIRA? This is about what looks to be a 7 min gap during karaf startup and not related to our clustering.&lt;/p&gt;</comment>
                            <comment id="63998" author="vpickard" created="Tue, 10 Jul 2018 14:37:11 +0000"  >&lt;p&gt;I saw something similiar in another run, but in this case, ODL/karaf appears to just hang, i.e., no logs after the first initial startup sequence.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;Sandbox link:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://logs.opendaylight.org/releng/vex-yul-odl-jenkins-1/builder-copy-sandbox-logs/181/controller-csit-3node-clustering-vpickard-all-oxygen/23/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://logs.opendaylight.org/releng/vex-yul-odl-jenkins-1/builder-copy-sandbox-logs/181/controller-csit-3node-clustering-vpickard-all-oxygen/23/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;Final logs in odl3 karaf log:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://logs.opendaylight.org/releng/vex-yul-odl-jenkins-1/builder-copy-sandbox-logs/181/controller-csit-3node-clustering-vpickard-all-oxygen/23/odl3_karaf.log.gz&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://logs.opendaylight.org/releng/vex-yul-odl-jenkins-1/builder-copy-sandbox-logs/181/controller-csit-3node-clustering-vpickard-all-oxygen/23/odl3_karaf.log.gz&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;Jul 04, 2018 12:43:35 PM org.apache.karaf.main.Main launch&lt;br/&gt;
INFO: Installing and starting initial bundles&lt;br/&gt;
Jul 04, 2018 12:43:35 PM org.apache.karaf.main.Main launch&lt;br/&gt;
INFO: All initial bundles installed and set to start&lt;br/&gt;
Jul 04, 2018 12:43:35 PM org.apache.karaf.main.lock.SimpleFileLock lock&lt;br/&gt;
INFO: Trying to lock /tmp/karaf-0.8.3-SNAPSHOT/lock&lt;br/&gt;
Jul 04, 2018 12:43:35 PM org.apache.karaf.main.lock.SimpleFileLock lock&lt;br/&gt;
INFO: Lock acquired&lt;br/&gt;
Jul 04, 2018 12:43:35 PM org.apache.karaf.main.Main$KarafLockCallback lockAquired&lt;br/&gt;
INFO: Lock acquired. Setting startlevel to 100&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;Normal startups look something like this:&lt;/p&gt;

&lt;p&gt;ul 04, 2018 12:24:53 PM org.apache.karaf.main.Main launch&lt;br/&gt;
INFO: Installing and starting initial bundles&lt;br/&gt;
Jul 04, 2018 12:24:53 PM org.apache.karaf.main.Main launch&lt;br/&gt;
INFO: All initial bundles installed and set to start&lt;br/&gt;
Jul 04, 2018 12:24:54 PM org.apache.karaf.main.lock.SimpleFileLock lock&lt;br/&gt;
INFO: Trying to lock /tmp/karaf-0.8.3-SNAPSHOT/lock&lt;br/&gt;
Jul 04, 2018 12:24:54 PM org.apache.karaf.main.lock.SimpleFileLock lock&lt;br/&gt;
INFO: Lock acquired&lt;br/&gt;
Jul 04, 2018 12:24:54 PM org.apache.karaf.main.Main$KarafLockCallback lockAquired&lt;br/&gt;
INFO: Lock acquired. Setting startlevel to 100&lt;br/&gt;
2018-07-04T12:25:00,969 | INFO | pool-1-thread-2 | FeaturesServiceImpl | 8 - org.apache.karaf.features.core - 4.1.5 | Adding features: odl-integration-compatible-with-all/&lt;span class=&quot;error&quot;&gt;&amp;#91;0.8.3.SNAPSHOT,0.8.3.SNAPSHOT&amp;#93;&lt;/span&gt;, odl-jolokia/&lt;span class=&quot;error&quot;&gt;&amp;#91;1.10.3.SNAPSHOT,1.10.3.SNAPSHOT&amp;#93;&lt;/span&gt;, odl-restconf/&lt;span class=&quot;error&quot;&gt;&amp;#91;1.7.3.SNAPSHOT,1.7.3.SNAPSHOT&amp;#93;&lt;/span&gt;, odl-clustering-test-app/&lt;span class=&quot;error&quot;&gt;&amp;#91;1.7.3.SNAPSHOT,1.7.3.SNAPSHOT&amp;#93;&lt;/span&gt;, 42ecb7fe-aed1-4fa7-930f-d13bd83ea61a/&lt;span class=&quot;error&quot;&gt;&amp;#91;0,0.0.0&amp;#93;&lt;/span&gt;&lt;br/&gt;
2018-07-04T12:25:01,236 | INFO | features-1-thread-1 | FeaturesServiceImpl | 8 - org.apache.karaf.features.core - 4.1.5 | Changes to perform:&lt;br/&gt;
2018-07-04T12:25:01,237 | INFO | features-1-thread-1 | FeaturesServiceImpl | 8 - org.apache.karaf.features.core - 4.1.5 | Region: root&lt;br/&gt;
2018-07-04T12:25:01,237 | INFO | features-1-thread-1 | FeaturesServiceImpl | 8 - org.apache.karaf.features.core - 4.1.5 | Bundles to install:&lt;br/&gt;
2018-07-04T12:25:01,237 | INFO | features-1-thread-1 | FeaturesServiceImpl | 8 - org.apache.karaf.features.core - 4.1.5 | mvn:com.sun.jersey/je&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</comment>
                            <comment id="63999" author="tpantelis" created="Tue, 10 Jul 2018 14:51:08 +0000"  >&lt;p&gt;Strange.&#160; Even in the normal run it took 6s before &quot;Adding features...&quot; was logged. What is it doing&#160;during that period....&#160; maybe adding feature repos, installing boot features...&#160; we&apos;d need a thread dump (or several) during that period to get an idea.&#160; Does CSIT configure the&#160;org.ops4j.pax.url.mvn.cfg to only use the local system dir or does it allow external&#160;resolution of artifacts? I&apos;m wondering if it&apos;s trying to download artifact(s) over the network.&lt;/p&gt;</comment>
                            <comment id="64005" author="vpickard" created="Tue, 10 Jul 2018 19:17:37 +0000"  >{no format}&lt;br/&gt;
&lt;br/&gt;
+ cat /tmp/karaf-0.8.3-SNAPSHOT/etc/org.ops4j.pax.url.mvn.cfg&lt;br/&gt;
################################################################################&lt;br/&gt;
#&lt;br/&gt;
#    Licensed to the Apache Software Foundation (ASF) under one or more&lt;br/&gt;
#    contributor license agreements.  See the NOTICE file distributed with&lt;br/&gt;
#    this work for additional information regarding copyright ownership.&lt;br/&gt;
#    The ASF licenses this file to You under the Apache License, Version 2.0&lt;br/&gt;
#    (the &quot;License&quot;); you may not use this file except in compliance with&lt;br/&gt;
#    the License.  You may obtain a copy of the License at&lt;br/&gt;
#&lt;br/&gt;
#       &lt;a href=&quot;http://www.apache.org/licenses/LICENSE-2.0&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://www.apache.org/licenses/LICENSE-2.0&lt;/a&gt;&lt;br/&gt;
#&lt;br/&gt;
#    Unless required by applicable law or agreed to in writing, software&lt;br/&gt;
#    distributed under the License is distributed on an &quot;AS IS&quot; BASIS,&lt;br/&gt;
#    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.&lt;br/&gt;
#    See the License for the specific language governing permissions and&lt;br/&gt;
#    limitations under the License.&lt;br/&gt;
#&lt;br/&gt;
################################################################################&lt;br/&gt;
&lt;br/&gt;
#&lt;br/&gt;
# If set to true, the following property will not allow any certificate to be used&lt;br/&gt;
# when accessing Maven repositories through SSL&lt;br/&gt;
#&lt;br/&gt;
#org.ops4j.pax.url.mvn.certificateCheck=&lt;br/&gt;
&lt;br/&gt;
#&lt;br/&gt;
# Path to the local Maven settings file.&lt;br/&gt;
# The repositories defined in this file will be automatically added to the list&lt;br/&gt;
# of default repositories if the &apos;org.ops4j.pax.url.mvn.repositories&apos; property&lt;br/&gt;
# below is not set.&lt;br/&gt;
# The following locations are checked for the existence of the settings.xml file&lt;br/&gt;
#   * 1. looks for the specified url&lt;br/&gt;
#   * 2. if not found looks for ${user.home}/.m2/settings.xml&lt;br/&gt;
#   * 3. if not found looks for ${maven.home}/conf/settings.xml&lt;br/&gt;
#   * 4. if not found looks for ${M2_HOME}/conf/settings.xml&lt;br/&gt;
#&lt;br/&gt;
#org.ops4j.pax.url.mvn.settings=&lt;br/&gt;
&lt;br/&gt;
#&lt;br/&gt;
# Path to the local Maven repository which is used to avoid downloading&lt;br/&gt;
# artifacts when they already exist locally.&lt;br/&gt;
# The value of this property will be extracted from the settings.xml file&lt;br/&gt;
# above, or defaulted to:&lt;br/&gt;
#     System.getProperty( &quot;user.home&quot; ) + &quot;/.m2/repository&quot;&lt;br/&gt;
#&lt;br/&gt;
org.ops4j.pax.url.mvn.localRepository=${karaf.home}/${karaf.default.repository}&lt;br/&gt;
&lt;br/&gt;
#&lt;br/&gt;
# Default this to false. It&apos;s just weird to use undocumented repos&lt;br/&gt;
#&lt;br/&gt;
org.ops4j.pax.url.mvn.useFallbackRepositories=false&lt;br/&gt;
&lt;br/&gt;
#&lt;br/&gt;
# Uncomment if you don&apos;t wanna use the proxy settings&lt;br/&gt;
# from the Maven conf/settings.xml file&lt;br/&gt;
#&lt;br/&gt;
# org.ops4j.pax.url.mvn.proxySupport=false&lt;br/&gt;
&lt;br/&gt;
#&lt;br/&gt;
# Comma separated list of repositories scanned when resolving an artifact.&lt;br/&gt;
# Those repositories will be checked before iterating through the&lt;br/&gt;
#    below list of repositories and even before the local repository&lt;br/&gt;
# A repository url can be appended with zero or more of the following flags:&lt;br/&gt;
#    @snapshots  : the repository contains snaphots&lt;br/&gt;
#    @noreleases : the repository does not contain any released artifacts&lt;br/&gt;
#&lt;br/&gt;
# The following property value will add the system folder as a repo.&lt;br/&gt;
#&lt;br/&gt;
org.ops4j.pax.url.mvn.defaultRepositories=\&lt;br/&gt;
    &lt;a href=&quot;file:$&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;file:$&lt;/a&gt;{karaf.home}/${karaf.default.repository}@id=system.repository@snapshots,\&lt;br/&gt;
    &lt;a href=&quot;file:$&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;file:$&lt;/a&gt;{karaf.data}/kar@id=kar.repository@multi@snapshots,\&lt;br/&gt;
    &lt;a href=&quot;file:$&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;file:$&lt;/a&gt;{karaf.base}/${karaf.default.repository}@id=child.system.repository@snapshots&lt;br/&gt;
&lt;br/&gt;
# Use the default local repo (e.g.~/.m2/repository) as a &quot;remote&quot; repo&lt;br/&gt;
#org.ops4j.pax.url.mvn.defaultLocalRepoAsRemote=false&lt;br/&gt;
&lt;br/&gt;
#&lt;br/&gt;
# Comma separated list of repositories scanned when resolving an artifact.&lt;br/&gt;
# The default list includes the following repositories:&lt;br/&gt;
#    &lt;a href=&quot;http://repo1.maven.org/maven2@id=central&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://repo1.maven.org/maven2@id=central&lt;/a&gt;&lt;br/&gt;
#    &lt;a href=&quot;http://repository.springsource.com/maven/bundles/release@id=spring.ebr&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://repository.springsource.com/maven/bundles/release@id=spring.ebr&lt;/a&gt;&lt;br/&gt;
#    &lt;a href=&quot;http://repository.springsource.com/maven/bundles/external@id=spring.ebr.external&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://repository.springsource.com/maven/bundles/external@id=spring.ebr.external&lt;/a&gt;&lt;br/&gt;
#    &lt;a href=&quot;http://zodiac.springsource.com/maven/bundles/release@id=gemini&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://zodiac.springsource.com/maven/bundles/release@id=gemini&lt;/a&gt;&lt;br/&gt;
#    &lt;a href=&quot;http://repository.apache.org/content/groups/snapshots-group@id=apache@snapshots@noreleases&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://repository.apache.org/content/groups/snapshots-group@id=apache@snapshots@noreleases&lt;/a&gt;&lt;br/&gt;
#    &lt;a href=&quot;https://oss.sonatype.org/content/repositories/snapshots@id=sonatype.snapshots.deploy@snapshots@noreleases&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://oss.sonatype.org/content/repositories/snapshots@id=sonatype.snapshots.deploy@snapshots@noreleases&lt;/a&gt;&lt;br/&gt;
#    &lt;a href=&quot;https://oss.sonatype.org/content/repositories/ops4j-snapshots@id=ops4j.sonatype.snapshots.deploy@snapshots@noreleases&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://oss.sonatype.org/content/repositories/ops4j-snapshots@id=ops4j.sonatype.snapshots.deploy@snapshots@noreleases&lt;/a&gt;&lt;br/&gt;
# To add repositories to the default ones, prepend &apos;+&apos; to the list of repositories&lt;br/&gt;
# to add.&lt;br/&gt;
# A repository url can be appended with zero or more of the following flags:&lt;br/&gt;
#    @snapshots  : the repository contains snapshots&lt;br/&gt;
#    @noreleases : the repository does not contain any released artifacts&lt;br/&gt;
#    @id=repository.id : the id for the repository, just like in the settings.xml this is optional but recommended&lt;br/&gt;
#&lt;br/&gt;
org.ops4j.pax.url.mvn.repositories=&lt;a href=&quot;https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot@id=opendaylight-snapshot@snapshots&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot@id=opendaylight-snapshot@snapshots&lt;/a&gt;, &lt;a href=&quot;https://nexus.opendaylight.org/content/repositories/public@id=opendaylight-mirror&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://nexus.opendaylight.org/content/repositories/public@id=opendaylight-mirror&lt;/a&gt;, &lt;a href=&quot;http://repo1.maven.org/maven2@id=central&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://repo1.maven.org/maven2@id=central&lt;/a&gt;, &lt;a href=&quot;http://repository.springsource.com/maven/bundles/release@id=spring.ebr.release&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://repository.springsource.com/maven/bundles/release@id=spring.ebr.release&lt;/a&gt;, &lt;a href=&quot;http://repository.springsource.com/maven/bundles/external@id=spring.ebr.external&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://repository.springsource.com/maven/bundles/external@id=spring.ebr.external&lt;/a&gt;, &lt;a href=&quot;http://zodiac.springsource.com/maven/bundles/release@id=gemini&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://zodiac.springsource.com/maven/bundles/release@id=gemini&lt;/a&gt;, &lt;a href=&quot;http://repository.apache.org/content/groups/snapshots-group@id=apache@snapshots@noreleases&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://repository.apache.org/content/groups/snapshots-group@id=apache@snapshots@noreleases&lt;/a&gt;, &lt;a href=&quot;https://oss.sonatype.org/content/repositories/snapshots@id=sonatype.snapshots.deploy@snapshots@noreleases&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://oss.sonatype.org/content/repositories/snapshots@id=sonatype.snapshots.deploy@snapshots@noreleases&lt;/a&gt;, &lt;a href=&quot;https://oss.sonatype.org/content/repositories/ops4j-snapshots@id=ops4j.sonatype.snapshots.deploy@snapshots@noreleases&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://oss.sonatype.org/content/repositories/ops4j-snapshots@id=ops4j.sonatype.snapshots.deploy@snapshots@noreleases&lt;/a&gt;&lt;br/&gt;
{no format}</comment>
                            <comment id="64054" author="vpickard" created="Mon, 16 Jul 2018 17:24:56 +0000"  >&lt;p&gt;I&apos;m lowering the priority on this issue. This is very sporadic and difficult to reproduce. &lt;/p&gt;

&lt;p&gt;I do have a patch that should detect when this issue occurs, and do a thread dump:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/73667/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/73667/&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="64190" author="jluhrsen" created="Tue, 24 Jul 2018 22:24:00 +0000"  >&lt;p&gt;my local docker container running ODL seems to be stuck in this state. I&apos;m not sure what to do, but I don&apos;t want to get out of this state without at least trying to figure out some clues. anyone with ideas, please pass them my way.&lt;/p&gt;</comment>
                            <comment id="64191" author="jluhrsen" created="Tue, 24 Jul 2018 22:40:42 +0000"  >&lt;p&gt;btw, I&apos;m just now realizing that we are not the only place this kind of thing is seen:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://stackoverflow.com/questions/50734332/karaf-does-not-start&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://stackoverflow.com/questions/50734332/karaf-does-not-start&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://karaf.922171.n3.nabble.com/Karaf-4-0-0-6-lines-in-the-logfile-and-nothing-more-td4041410.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://karaf.922171.n3.nabble.com/Karaf-4-0-0-6-lines-in-the-logfile-and-nothing-more-td4041410.html&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="64192" author="ecelgp" created="Tue, 24 Jul 2018 22:43:07 +0000"  >&lt;p&gt;In this state can you use fuser to know the user of /tmp/karaf-0.8.3-SNAPSHOT/lock?&lt;/p&gt;

&lt;p&gt;fuser -v /tmp/karaf-0.8.3-SNAPSHOT/lock&lt;/p&gt;

&lt;p&gt;Just to see if this is a file lock problem.&lt;/p&gt;</comment>
                            <comment id="64193" author="jluhrsen" created="Tue, 24 Jul 2018 22:56:11 +0000"  >&lt;p&gt;yeah, user seems fine:&lt;/p&gt;

&lt;p&gt;with karaf stopped:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;$ pwd
/home/jluhrsen/jamo/repos/OpenDaylight/netvirt-ha-docker/mounts/1/assembly
$ sudo fuser lock
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;starting karaf:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;sudo fuser lock
/home/jluhrsen/jamo/repos/OpenDaylight/netvirt-ha-docker/mounts/1/assembly/lock: 15756
ps -elf | rg 15756
0 S root     15756 15585 99  80   0 - 2038025 -    15:52 pts/5    00:04:17 /usr/bin/java -Djava.security.properties=/odlha/karaf/target/assembly/etc/odl.java.security -Xms128M -Xmx2048m -XX:+UnlockDiagnosticVMOptions -XX:+HeapDumpOnOutOfMemoryError -Dcom.sun.management.jmxremote -Djava.security.egd=file:/dev/./urandom -Djava.endorsed.dirs=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.172-9.b11.fc28.x86_64/jre/jre/lib/endorsed:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.172-9.b11.fc28.x86_64/jre/lib/endorsed:/odlha/karaf/target/assembly/lib/endorsed -Djava.ext.dirs=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.172-9.b11.fc28.x86_64/jre/jre/lib/ext:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.172-9.b11.fc28.x86_64/jre/lib/ext:/odlha/karaf/target/assembly/lib/ext -Dkaraf.instances=/odlha/karaf/target/assembly/instances -Dkaraf.home=/odlha/karaf/target/assembly -Dkaraf.base=/odlha/karaf/target/assembly -Dkaraf.data=/odlha/karaf/target/assembly/data -Dkaraf.etc=/odlha/karaf/target/assembly/etc -Dkaraf.restart.jvm.supported=&lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt; -Djava.io.tmpdir=/odlha/karaf/target/assembly/data/tmp -Djava.util.logging.config.file=/odlha/karaf/target/assembly/etc/java.util.logging.properties -Dkaraf.startLocalConsole=&lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt; -Dkaraf.startRemoteShell=&lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt; -classpath /odlha/karaf/target/assembly/lib/boot/org.apache.karaf.diagnostic.boot-4.1.5.jar:/odlha/karaf/target/assembly/lib/boot/org.apache.karaf.jaas.boot-4.1.5.jar:/odlha/karaf/target/assembly/lib/boot/org.apache.karaf.main-4.1.5.jar:/odlha/karaf/target/assembly/lib/boot/org.osgi.core-6.0.0.jar org.apache.karaf.main.Main

cat karaf.log
Jul 24, 2018 10:21:47 PM org.apache.karaf.main.lock.SimpleFileLock lock
INFO: Trying to lock /odlha/karaf/target/assembly/lock
Jul 24, 2018 10:21:47 PM org.apache.karaf.main.lock.SimpleFileLock lock
INFO: Lock acquired
Jul 24, 2018 10:21:47 PM org.apache.karaf.main.Main$KarafLockCallback lockAquired
INFO: Lock acquired. Setting startlevel to 100
Jul 24, 2018 10:34:45 PM org.apache.karaf.main.lock.SimpleFileLock lock
INFO: Trying to lock /odlha/karaf/target/assembly/lock
Jul 24, 2018 10:34:45 PM org.apache.karaf.main.lock.SimpleFileLock lock
INFO: Lock acquired
Jul 24, 2018 10:34:45 PM org.apache.karaf.main.Main$KarafLockCallback lockAquired
INFO: Lock acquired. Setting startlevel to 100
Jul 24, 2018 10:37:19 PM org.apache.karaf.main.lock.SimpleFileLock lock
INFO: Trying to lock /odlha/karaf/target/assembly/lock
Jul 24, 2018 10:37:19 PM org.apache.karaf.main.lock.SimpleFileLock lock
INFO: Lock acquired
Jul 24, 2018 10:37:19 PM org.apache.karaf.main.Main$KarafLockCallback lockAquired
INFO: Lock acquired. Setting startlevel to 100
Jul 24, 2018 10:52:11 PM org.apache.karaf.main.lock.SimpleFileLock lock
INFO: Trying to lock /odlha/karaf/target/assembly/lock
Jul 24, 2018 10:52:11 PM org.apache.karaf.main.lock.SimpleFileLock lock
INFO: Lock acquired
Jul 24, 2018 10:52:11 PM org.apache.karaf.main.Main$KarafLockCallback lockAquired
INFO: Lock acquired. Setting startlevel to 100
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                            <comment id="64195" author="jluhrsen" created="Tue, 24 Jul 2018 23:42:56 +0000"  >&lt;p&gt;since my reproduction is in a docker container, I&apos;m able to start the container and then bounce karaf as needed.&lt;/p&gt;

&lt;p&gt;Every time I bounce it I get the same little lockAquired messages in karaf.log, but that&apos;s it.&lt;/p&gt;

&lt;p&gt;However, it seems it&apos;s still loading the karaf features and maybe working fine. I see that port 6653 (openflow)&lt;br/&gt;
gets lit up when I start karaf.&lt;/p&gt;

&lt;p&gt;It&apos;s still a mystery why the karaf.log is not having any output. The karaf shell &quot;log:display&quot; is also empty.&lt;/p&gt;

&lt;p&gt;I did see one stdout error when starting the karaf shell, but no idea if it&apos;s related at all. here it is:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
opendaylight-user@root&amp;gt;23:42:39.944 [Blueprint Extender: 2] ERROR org.opendaylight.netvirt.vpnmanager.LearntVpnVipToPortEventProcessor - Failed to register the entity arpmonitoring
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                            <comment id="64207" author="vpickard" created="Wed, 25 Jul 2018 11:54:54 +0000"  >&lt;p&gt;One thing to try that may give us some clues, is strace.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;strace -p &amp;lt;karaf.pid&amp;gt;&lt;/p&gt;</comment>
                            <comment id="64225" author="jluhrsen" created="Wed, 25 Jul 2018 15:54:23 +0000"  >&lt;p&gt;can&apos;t do this in my current setup. docker security stops me. I can maybe start a new container with flags to&lt;br/&gt;
allow it, but then I&apos;m worried that this problem will go away.&lt;/p&gt;</comment>
                            <comment id="64229" author="skitt@redhat.com" created="Wed, 25 Jul 2018 16:49:32 +0000"  >&lt;p&gt;It turns out this is caused by the Pax Logging configuration file having the wrong contents, so the logs aren&#8217;t stored in the Karaf log file. Jamo reproduced this, and had a configuration file which only contained the lines from qosservice.cfg. So it seems that QosAlertGenerator in NetVirt is involved &#8212; it rewrites the configuration file...&lt;/p&gt;

&lt;p&gt;When this happens, the container itself is functional. That explains the seven minute thing: the container started, with no Pax logging (so only the initial lines made it), but the container worked so CSIT continued, ended up killing Karaf and starting it again. There is no double-start causing locking issues, it&#8217;s two Karaf instances being started in succession but with no logging.&lt;/p&gt;</comment>
                            <comment id="64232" author="tpantelis" created="Wed, 25 Jul 2018 17:14:21 +0000"  >&lt;p&gt;nice find. I assume it&apos;s getting overwritten with log4j settings instead of log4j2.&lt;/p&gt;</comment>
                            <comment id="64233" author="jluhrsen" created="Wed, 25 Jul 2018 17:31:38 +0000"  >&lt;p&gt;yeah, this is starting to explain a lot of seeming weirdness. It explains why I couldn&apos;t figure out my logs and timestamps when&lt;br/&gt;
working on &lt;a href=&quot;https://jira.opendaylight.org/browse/CONTROLLER-1849&quot; title=&quot;controller not coming up healthy after being killed and restarted (401 after 5m)&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CONTROLLER-1849&quot;&gt;&lt;del&gt;CONTROLLER-1849&lt;/del&gt;&lt;/a&gt;. At some point my node hit this bug and my automation looped 31 times looking for 1849&lt;br/&gt;
but no logs came. So, when I finally hit the bug, there was nothing to see and pass on. &lt;img class=&quot;emoticon&quot; src=&quot;https://jira.opendaylight.org/images/icons/emoticons/sad.png&quot; height=&quot;16&quot; width=&quot;16&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt;&lt;/p&gt;

&lt;p&gt;We (&lt;a href=&quot;https://jira.opendaylight.org/secure/ViewProfile.jspa?name=skitt&quot; class=&quot;user-hover&quot; rel=&quot;skitt&quot;&gt;skitt&lt;/a&gt;, &lt;a href=&quot;https://jira.opendaylight.org/secure/ViewProfile.jspa?name=thapar&quot; class=&quot;user-hover&quot; rel=&quot;thapar&quot;&gt;thapar&lt;/a&gt; and I) saw a corrupted logging config file when I started karaf and then quickly exited with a CTRL-C.&lt;/p&gt;

&lt;p&gt;So we have something troublesome that can pop up if we stop (kill -9, CTRL-C, maybe other ways) a node at the wrong time.&lt;/p&gt;

&lt;p&gt;I&apos;ll see if I can find a more reliable way to reproduce this, if someone can think of a safer way to have netvirt rewrite this logging&lt;br/&gt;
configuration file.&lt;/p&gt;
</comment>
                            <comment id="64245" author="jluhrsen" created="Wed, 25 Jul 2018 23:16:40 +0000"  >&lt;p&gt;ok, I can reproduce this locally. The bottom line, I think, is if we kill the karaf process at some perfect time, the&lt;br/&gt;
 logging config file gets hosed. I don&apos;t know how to recover it either, other than having a good copy nearby, which&lt;br/&gt;
 I can get from the odlparent repo. That copy will have 91 lines in it. After netvirt is started and makes it&apos;s qos&lt;br/&gt;
 additions, it will have 107 lines in it.&lt;/p&gt;

&lt;p&gt;My most recent reproduction saw that the log file was completely empty, but I&apos;ve seen it in various truncated&lt;br/&gt;
forms as well.&lt;/p&gt;

&lt;p&gt;this bash script can be used for reproduction. Just replace the ${LOCATION} env var with the root of where you want &lt;br/&gt;
 it to start karaf and find the logging config file:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
#!/bin/bash

&lt;span class=&quot;code-keyword&quot;&gt;while&lt;/span&gt; &lt;span class=&quot;code-keyword&quot;&gt;true&lt;/span&gt;
&lt;span class=&quot;code-keyword&quot;&gt;do&lt;/span&gt;
  # start karaf
  ${LOCATION}/karaf/target/assembly/bin/start

  # pick a random value between 1-15 seconds &lt;span class=&quot;code-keyword&quot;&gt;for&lt;/span&gt; when we kill karaf
  sleepy_time=$((RANDOM % (40 - 20 + 1) + 20))
  echo &lt;span class=&quot;code-quote&quot;&gt;&quot;Waiting $sleepy_time seconds before killing karaf&quot;&lt;/span&gt;
  sleep $sleepy_time
  # kill it
  ps aux | grep karaf.main | grep -v grep | awk &lt;span class=&quot;code-quote&quot;&gt;&apos;{print &lt;span class=&quot;code-quote&quot;&gt;&quot;kill -9&quot;&lt;/span&gt;,$2}&apos;&lt;/span&gt; | sh

  # check line count is right in logging config file 
  linecount=`cat ${LOCATION}/karaf/target/assembly/etc/org.ops4j.pax.logging.cfg | wc -l`

  &lt;span class=&quot;code-keyword&quot;&gt;if&lt;/span&gt; [ &lt;span class=&quot;code-quote&quot;&gt;&quot;$linecount&quot;&lt;/span&gt; -ne &lt;span class=&quot;code-quote&quot;&gt;&quot;107&quot;&lt;/span&gt; ]; then
          echo &lt;span class=&quot;code-quote&quot;&gt;&quot;might have caught the mysterious config file corruption monster&quot;&lt;/span&gt;; exit 1
  fi

done

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</comment>
                            <comment id="64246" author="tpantelis" created="Wed, 25 Jul 2018 23:38:09 +0000"  >&lt;p&gt;It seems odd for QosAlertGenerator to add fixed logging configuration in code at runtime, usually such configuration is set up on deployment if desired.  I don&apos;t know the history of this but perhaps we should consider removing it. &lt;/p&gt;</comment>
                            <comment id="64247" author="jluhrsen" created="Wed, 25 Jul 2018 23:41:22 +0000"  >&lt;p&gt;yeah. or can there be a more atomic way to modify the file such that a badly timed kill won&apos;t cause this?&lt;/p&gt;</comment>
                            <comment id="64248" author="tpantelis" created="Wed, 25 Jul 2018 23:45:40 +0000"  >&lt;p&gt;That&apos;s the risk/danger of killing any process - could leave something in a corrupted state.  The levelDB files could get corrupted if it was in the middle of updating a table...&lt;/p&gt;</comment>
                            <comment id="64249" author="jluhrsen" created="Wed, 25 Jul 2018 23:47:08 +0000"  >&lt;p&gt;of course. and a power outage, OOM crash, kernel panic...&lt;/p&gt;</comment>
                            <comment id="64250" author="tpantelis" created="Wed, 25 Jul 2018 23:51:02 +0000"  >&lt;p&gt;You could try deleting the etc/org.opendaylight.netvirt.qosservice.fcg file for your testing if this issue is blocking it. However looking at QosAlertGenerator it looks it would blow up with an NPE if the file doesn&apos;t exist but I can push a quick patch for that.&lt;/p&gt;</comment>
                            <comment id="64251" author="jluhrsen" created="Wed, 25 Jul 2018 23:56:26 +0000"  >&lt;p&gt;ok, what&apos;s the theory here? without that file, there will be no actual attempt to modify that logging config file, so we won&apos;t have the chance of getting a corrupted file at all?&lt;/p&gt;

&lt;p&gt;Not sure if an NPE will hurt me will it? not in the case where I&apos;m trying to reproduce the &lt;a href=&quot;https://jira.opendaylight.org/browse/CONTROLLER-1849&quot; title=&quot;controller not coming up healthy after being killed and restarted (401 after 5m)&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CONTROLLER-1849&quot;&gt;&lt;del&gt;CONTROLLER-1849&lt;/del&gt;&lt;/a&gt; restart&lt;br/&gt;
issue.&lt;/p&gt;</comment>
                            <comment id="64252" author="tpantelis" created="Thu, 26 Jul 2018 00:02:04 +0000"  >&lt;p&gt;The qos service bundle would bomb out and fail to start - you don&apos;t care about that for your testing but it could affect the diag status checks. For your testing I would suggest to not install integration-all - all you need is the odl-clustering-test-app (ie cars/people)&lt;/p&gt;</comment>
                            <comment id="64254" author="jluhrsen" created="Thu, 26 Jul 2018 04:18:58 +0000"  >&lt;p&gt;yes. good point. I got ahead of myself here, but at least we found some answers to some mysteries. &lt;img class=&quot;emoticon&quot; src=&quot;https://jira.opendaylight.org/images/icons/emoticons/smile.png&quot; height=&quot;16&quot; width=&quot;16&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt;&lt;/p&gt;

&lt;p&gt;back to &lt;a href=&quot;https://jira.opendaylight.org/browse/CONTROLLER-1849&quot; title=&quot;controller not coming up healthy after being killed and restarted (401 after 5m)&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CONTROLLER-1849&quot;&gt;&lt;del&gt;CONTROLLER-1849&lt;/del&gt;&lt;/a&gt; without netvirt features. Really hoping someone will be able to address&lt;br/&gt;
this one though.&lt;/p&gt;</comment>
                            <comment id="64255" author="ariel.adam" created="Thu, 26 Jul 2018 04:43:15 +0000"  >&lt;p&gt;Given that this isn&apos;t a clustering problems but Netvirt bug moved to Sam.&lt;/p&gt;</comment>
                            <comment id="64281" author="vorburger" created="Thu, 26 Jul 2018 11:00:05 +0000"  >&lt;p&gt;&lt;a href=&quot;https://lists.opendaylight.org/pipermail/netvirt-dev/2018-July/007293.html&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://lists.opendaylight.org/pipermail/netvirt-dev/2018-July/007293.html&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://git.opendaylight.org/gerrit/#/c/74496/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/#/c/74496/&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="64283" author="vorburger" created="Thu, 26 Jul 2018 11:48:51 +0000"  >&lt;p&gt;&lt;a href=&quot;https://jira.opendaylight.org/browse/NETVIRT-1386&quot; title=&quot;Better permanent solution for QosAlertGenerator which shall not modify the logging configuration at runtime&quot; class=&quot;issue-link&quot; data-issue-key=&quot;NETVIRT-1386&quot;&gt;&lt;del&gt;NETVIRT-1386&lt;/del&gt;&lt;/a&gt; opened to track discussing if and how a better solution can be re-implemented in a future follow up change to the c/74496 short term removal of the code that modified the logging configuration.&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10003">
                    <name>Relates</name>
                                            <outwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="30150">NETVIRT-1315</issuekey>
        </issuelink>
                            </outwardlinks>
                                                                <inwardlinks description="relates to">
                                        <issuelink>
            <issuekey id="30402">NETVIRT-1386</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                            <attachment id="14742" name="odl3_karaf.log.annotated" size="2173699" author="vpickard" created="Mon, 2 Jul 2018 20:06:18 +0000"/>
                    </attachments>
                <subtasks>
                            <subtask id="30258">CONTROLLER-1846</subtask>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_11400" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10000" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i03gan:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>