I've changed DocumentImpl.java in three locations:
buildIndex() traverseParents() updatePathIndex()
This patch modifies updatePathIndex() by changing the pathsFound input parameter to a HashMap from a Vector. The HashMap stores PathIndexEntry objects that represent each row to be inserted into the xml_path_index table. The HashMap prevents nodeids from the current node from being offset with the data from adjacent nodes under certain circumstances, which was happening while a Vector was being used to store paths found for indexing. See the next two patches for more info.
As part of a patch fix for:
I've changed DocumentImpl.java in three locations:
buildIndex()
traverseParents()
updatePathIndex()
This patch modifies updatePathIndex() by changing the pathsFound input
parameter to a HashMap from a Vector. The HashMap stores PathIndexEntry
objects that represent each row to be inserted into the xml_path_index table.
The HashMap prevents nodeids from the current node from being offset with
the data from adjacent nodes under certain circumstances, which was happening
while a Vector was being used to store paths found for indexing. See the next
two patches for more info.