THere is certainly a point in time, between when the config admin is started and when the configuration are given to it by fileinstall where the configuration may not have the right values. This could happen if someone modified the configurations by another mean that file install.
Felix is right that fileinstall would be better to listen for such changes and write them back to the config files. I'll try to find some time to fix that. On Mon, Oct 11, 2010 at 09:57, Bengt Rodehav <[email protected]> wrote: > Guillaume, > > Are you sure that this always works? Could "unlucky timing" cause the > bundle > cache to take precedence over file install? > > Doesn't this require that configuration manager's cached values have been > restored BEFORE file install starts to propagate changes? Is this > guaranteed? > > /Bengt > > 2010/10/11 Guillaume Nodet <[email protected]> > > > On Fri, Oct 8, 2010 at 14:33, Bengt Rodehav <[email protected]> wrote: > > > > > I'm using Karaf 1.6.0 (Felix 2.0.5 I think) and File install 3.0.2. > > > > > > I use iPOJO (1.6.4) to create service factories that are instantiated > by > > > file install by dropping a configuration file in a dedicated directory. > > > When > > > I update the configuration file, file install immediately propagates, > the > > > changes to the instantiated service. > > > > > > > The files in etc/*.cfg are monitored by fileinstall and are used to feed > > ConfigAdmin > > > > > > > > > > However, I can also change my configuration properties using > > configuration > > > manager directly (e g via the Felix web console). When I change > > > configuration properties this way, the properties are stored in > > > configuration manager's bundle cache but they are not propagated back > to > > > file install and my configuration file. > > > > > > > Yeah, it's a bit of a problem. Maybe a good thing would be to have the > > webconsole plugin update the properties file directly when inside karaf, > as > > the command console do. > > > > > > > > > > This means that my configuration file (used by file install) can differ > > > from > > > the configuration actually used and what is stored in the bundle cache. > > An > > > important question regarding this is which configuration takes > precedence > > > on > > > startup? > > > > > > My tests indicate that what I specify in my configuration file (which > is > > > picked up by file install) is the configuration that will be used > > directly > > > after startup. I need to know whether this behavior is guaranteed > > > (deterministic) or if this is just the way it happens to work in my > case. > > > > > > > Yes, the files in etc/*.cfg should take precedence because fileinstall > will > > update all the configurations with what it founds in there, so any change > > done by another mean in ConfigAdmin will certainly be overwritten by > > fileinstall. > > > > > > > > > > I think I can live with either scenario - file install taking > precedence > > or > > > the bundle cache taking precedence - as long as the behavior is > > > deterministic. > > > > > > /Bengt > > > > > > > > > > > -- > > Cheers, > > Guillaume Nodet > > ------------------------ > > Blog: http://gnodet.blogspot.com/ > > ------------------------ > > Open Source SOA > > http://fusesource.com > > > -- Cheers, Guillaume Nodet ------------------------ Blog: http://gnodet.blogspot.com/ ------------------------ Open Source SOA http://fusesource.com

