Scott Ortel created KARAF-6998:
----------------------------------
Summary: Configurations with array property values calls @modified
every 2 seconds
Key: KARAF-6998
URL: https://issues.apache.org/jira/browse/KARAF-6998
Project: Karaf
Issue Type: Bug
Components: karaf
Affects Versions: 4.3.0
Reporter: Scott Ortel
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.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)