Uploaded image for project: 'Karaf'
  1. Karaf
  2. KARAF-6998

Karaf 4.3 Configurations with array property values calls @modified every 2 seconds

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 4.3.0
    • 4.3.1
    • karaf
    • None

    Description

      Configurations created with configadmin in 4.3 have two issues:

      1) The configuration is always persisted as JSON by the JsonConfigInstaller in 'karaf.etc' and is therefore watched by the file installer.  It seems this behavior should be governed by the 'felix.cm.dir' setting,  which would allow these persisted configurations to be placed elsewhere or not at all.  This differs from the .cfg CM persistence behavior.

      2) When JsonConfigInstaller examines the configuration and compares it to the existing one (setConfig() line 83), by performing a simple .equals() on the 'old' and 'properties' hash tables.  This does not property handle property values that are arrays (valid in OSGi 7).  As you know a map simply compares the key values using .equals, which for arrays is '=='.  This causes the configuration to always appear to be modified and the associated component is deactivated/activated/modified every 2 seconds.

       

      Thank you for Karaf and for considering this issue.

      Attachments

        1. logging.txt
          25 kB
          Wouter Born

        Issue Links

          Activity

            People

              jbonofre Jean-Baptiste Onofré
              sortel Scott Ortel
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: