You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by bu...@apache.org on 2001/11/08 11:25:02 UTC

DO NOT REPLY [Bug 4735] New: - Infinite loop processing large file

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=4735>.
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=4735

Infinite loop processing large file

           Summary: Infinite loop processing large file
           Product: XalanJ2
           Version: 2.2.x
          Platform: PC
        OS/Version: Windows NT/2K
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: Xalan
        AssignedTo: xalan-dev@xml.apache.org
        ReportedBy: fergusson_iain@jpmorgan.com


Applying an identity stylesheet to a very large file causes XALAN to enter an 
infinite loop.
At a fixed point in the input file, apply-templates fails to find the next 
element, and restarts at the document root.

Input data was generated by the Oracle XSU utility and has the form :

<?xml version="1.0" encoding="iso-8859-1"?>
<ROWSET>
   <ROW num="1">
      <ID_PARTY>0000</ID_PARTY>
      <ID_EFN>0000</ID_EFN>
      <ID_LE>0000</ID_LE>
      <ID_OU>000000</ID_OU>
      <NM_PARTY>uygfbvyrfjb</NM_PARTY>
      <NM_PARTY_ABBR>yruebgkebreyb</NM_PARTY_ABBR>
      <NM_PARTY_ALT>      </NM_PARTY_ALT>
      <ID_JPM_NJPM>N</ID_JPM_NJPM>
      <ID_STS_PRCS_PARTY>11</ID_STS_PRCS_PARTY>
      <DT_ADD_REC_SRC>1988-11-12 00:00:00.0</DT_ADD_REC_SRC>
      <ID_PT_RPL>0000000</ID_PT_RPL>
      <DT_LST_UPD_REC_SRC>1997-07-01 19:33:16.0</DT_LST_UPD_REC_SRC>
      <ID_TYP_OWNS_MA_OP>3</ID_TYP_OWNS_MA_OP>
      <ID_CLSF_LGL_PARTY>114</ID_CLSF_LGL_PARTY>
      <ID_TYPE_OWNS_AFFIL>114</ID_TYPE_OWNS_AFFIL>
      <DT_CHG_GRD>1997-07-02 11:53:06.0</DT_CHG_GRD>
   </ROW>
...

Problem occurs within the <ROW num="80660"> element, after the <DT_ADD_REC_SRC> 
element.
This is line 1451875 of the input, i.e. at or about 1451875 elements+attributes, 
or 1451875-80660 = 1371215 elements.

Stylesheet used was :
   
<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
	<xsl:output method="xml" />
	<xsl:template match="*">
		<xsl:copy>
			<xsl:for-each select="@*">
				<xsl:copy/>
			</xsl:for-each>
			<xsl:apply-templates/>
		</xsl:copy>
	</xsl:template>
</xsl:transform>

Xalan was run as a forked process under ANT, with maxMemory="1000000000"