Community
Participate
Working Groups
Pascal has suggested that we could add some performance improvements to the reconciler bundle. Loading the repositories is a lot of work we potentially don't have to do, so he had a couple of suggestions: 1). In the Activator/ProfileSynchronizer do timestamp checking to see if we actually have changes in the dropins/platform.xml/plugins folder. 2). Add logic to the DirectoryWatcher so it knows whether or not things have changed since the last session. We do a lot of work when we poll because all the files are called with #added and then the #isInterested call tries to determine if our listener is interested in the file.
Oh yeah, and a third possible solution was to create a proxy-repo that actually didn't load at first. I knew there was one option I forgot to list. ;-)
Created attachment 100537 [details] patch As we know from previous experience, when you are dealing with a FAT32 filesystem (as opposed to an NTFS one) and you change the contents of a directory, the timestamp of the directory does not change. I looked at the old update manager code in the configurator and it actually didn't handle this case either so I don't think that we have to worry about it. If the user wants to force reconciliation on startup, then they can use the osgi.checkConfiguration system property. I have attached a first attempt at a patch. It needs more testing.
Pascal and I have reviewed this and tested it. Released to HEAD.