You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@karaf.apache.org by "Jerry Meng (JIRA)" <ji...@apache.org> on 2015/12/01 12:15:10 UTC

[jira] [Created] (KARAF-4156) [karaf-3.0.x] set 'karaf.clean.all' as true will cause data folder cleaned while checking status

Jerry Meng created KARAF-4156:
---------------------------------

             Summary: [karaf-3.0.x] set 'karaf.clean.all' as true will cause data folder cleaned while checking status
                 Key: KARAF-4156
                 URL: https://issues.apache.org/jira/browse/KARAF-4156
             Project: Karaf
          Issue Type: Bug
    Affects Versions: 3.0.5
         Environment: Running on Mac OS X 10.11
            Reporter: Jerry Meng
            Priority: Critical
             Fix For: 3.0.6


Scenario
=======

In etc/system.properties, it describes
"
# Deletes the entire karaf.data directory at every start
karaf.clean.all = false
"

When I set the property as true, I expect it will clean data folder ONLY at karaf start; however it also causes the command 'stop' and 'status' to delete data folder so that the command complains "shutdown port file doesn't exist. The container is not running."

Root Cause
=========

The class 'org.apache.karaf.main.ConfigProperties' checks the property 'karaf.clean.all' in the constructor and deletes the data folder if it's set as true.

In  'org.apache.karaf.main.Stop' and 'org.apache.karaf.main.Status', they will instantiate ConfigProperties at the very beginning. They will never get port file correctly in this case and even cause working directory being deleted.

It seams that to delete data folder in the constructor of ConfigProperties does not make sense to me.




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)