DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=6496>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=6496

Infinite loop when an XPath expressionused both id() and last()

           Summary: Infinite loop when an XPath expressionused both id() and
                    last()
           Product: XalanJ2
           Version: 2.2.x
          Platform: PC
        OS/Version: Windows NT/2K
            Status: NEW
          Severity: Major
          Priority: Other
         Component: org.apache.xpath
        AssignedTo: [EMAIL PROTECTED]
        ReportedBy: [EMAIL PROTECTED]


Using the sample program ApplyXPath, modified slightly to create a validating
parser, evaluate the XPath expression

    id("fred john")[last()]

on the XML document:

    <?xml version='1.0' encoding='UTF-8'?>
    <!DOCTYPE project [
        <!ELEMENT project ANY>
        <!ATTLIST project id ID #IMPLIED>
        <!ELEMENT sub ANY>
        <!ATTLIST sub id ID #IMPLIED>
    ]>
    <project>
        <sub id ="fred"/>
        <sub id ="john"/>
    </project>


The result is the output:

    Loading classes, parsing c:/java/ids.xml, and setting up serializer
    Querying DOM using id("fred john")[last()]
    <output>
    <sub id="john"/>

followed by the program going into an infinite loop. 

This is quite serious for the work I'm doing.  My code is often running inside
containers which do not allow creation of user threads, so there's no way to
monitor the time taken by the evaluation of an XPath expression.

Reply via email to