|Re: [jgit-dev] isOutdated() and lastModified()|
Thank you, this helps. On Tuesday 14 December 2010 03:51:43 you wrote: > On Sat, Dec 11, 2010 at 8:02 AM, Dmitry Pavlenko <dmit10@xxxxxxx> wrote: > > I seems that FileBasedConfig (and loose-refs-related classes) relies on > > java.io.File.lastModified() call (at least in isOutdated() method). > > The following Gerrit changes try to fix this problem: > > http://egit.eclipse.org/r/2114 > http://egit.eclipse.org/r/2115 > http://egit.eclipse.org/r/2116 > http://egit.eclipse.org/r/2117 > http://egit.eclipse.org/r/2118 > http://egit.eclipse.org/r/2119 > > Unfortunately its a bit too accurate. 2117 ("FileBasedConfig: Use > FileSnapshot for isOutdated") shows an application programming bug > with regards to Repository getConfig(). Once this change goes into > JGit, applications cannot do: > > Repository db = ...; > db.getConfig().setString(....); > db.getConfig().save(); > > Because db.getConfig() might re-read the file and discard the set that > the application just performed. Yikes, that's one heck of a breakage.
Back to the top