On 8 Oct 2009, at 11:18, Felix Meschberger wrote:
Hi,
Ian Boston schrieb:
Hi,
I notice that ResourceProvidersEntries are sorted by the prefix that
they use. (there is a TreeMap in ResourceProviderEntries for entries)
I also notice that if they are not ordered in that way lots of things
start to break. This appears a bit fragile. I assume it relies on GET
and POST appearing in a set order.
Is the sort ordering correct ?
I assume you mean the TreeSet in the
ResourceProviderEntry.addResourceProvider method ? I could not find
another location matching your description.
Yes sorry, TreeSet and yes, in that method.
Was this intentional or fortunate ?
But yes, it is intended that the ResourceProviderEntry elements in the
entries field is sorted.
To be honest ... I fail to remember why the ordering was important, I
just know it was (and still seems to be) important for correct
operation.
ok.
Carsten and I have once been discussing off-line that it might be
tempting to check whether refactoring this structure into a Map of
Maps
of Maps of Entries would help performance wise ... but we never came
around to testing it or to more investigation.
ok, this is where the patch is upto (Map of Maps), I think the
ordering may be the last problem, but I thought that several days ago.
I think its quicker, but I don't have hard evidence.
it certainly doesn't loop or recurse quite as much and most of the
lookups are split the path into elements and do a tree walk, so it
degrades by the number of levels rather than the number of providers.
(assuming efficient maps)
Sounds like I should continue.
Ian
Regards
Felix