Joe,

I agree that indexing in general is good thing and COULD improve performance
, if it is really USED.
Unformtunately current Apache  XPath.exes impelementation almost does not do
this  - maybe this question more to org.apache.xpath.axes package, than to
org.apache.xml.dtm.ref.

I run smoketest target in the xalan tests and have found following :

method IndexNode has been called 31215 times
method DTMDefaultBase has been called 1174 times

I would say currenly index usage is very low in comparison to overhead it
addes.

The only iterator capable of using indexing (in package
org.apache.xpath.axes)  is org.apache.xpath.axes.DescendantIterator. (There
is also class org.apache.xpath.axes.ChildTestIterator, where all code which
could use indexing is commented out). My guess that DescendantIterator
covers really few cases of traversing.

So probably if experienced person could look into org.apache.xpath.axes
package and implement using indexes in all classes this will improve xalan
performance. 

Best regards,
Pavel

Reply via email to