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
Attachments
Issue Links
- relates to
-
KARAF-7097 JsonConfigInstaller is continuously updating configurations
- Resolved
-
KARAF-6924 Configurations created via web console are always persisted as JSON
- Resolved