Hi,

The patch applied to fix FELIX-2201 seems to have caused a regression:
See: https://issues.apache.org/jira/browse/FELIX-2201
svn diff -c937979 http://svn.apache.org/repos/asf/felix

The problem is that it keeps a TreeSet of files, ordered by last
modification time.  This causes a problem when more than one file in
the directory has the same modification time.  Say all the files in
the watched directory have the same timestamp: the resulting TreeSet
contains only one element!  (See TreeMap#put(K,V)).

I've read though the mailing list discussion about the issue [1], and
I still don't understand the purpose of the patch.  Specifically, I
don't follow why it's necessary to handle artifacts that "are
basically sets of 'library bundles' that export packages rather than
services" [2].

Maintaining a TreeSet based on a file timestamp doesn't seem like a
good solution:  what happens if the timestamp changes while it is in
the set?  Does the TreeSet then become inconsistent?  It also seems
somewhat heavyweight: how many times do all the files get stat'd to
check their timestamps while building the set?

Because of the regression: I'd like to re-open the bug, if that's OK?
Could the 'fix' be reverted until a better solution can be found?

Regards,
Martin

[1] http://www.mail-archive.com/[email protected]/msg06949.html
[2] http://www.mail-archive.com/[email protected]/msg06963.html

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to