[Mono-bugs] [Bug 585843] New: XslCompiledTransform major performance issue with select descendants specifying attribute values
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Fri Mar 5 11:26:36 EST 2010
http://bugzilla.novell.com/show_bug.cgi?id=585843
http://bugzilla.novell.com/show_bug.cgi?id=585843#c0
Summary: XslCompiledTransform major performance issue with
select descendants specifying attribute values
Classification: Mono
Product: Mono: Class Libraries
Version: 1.2.0
Platform: Other
OS/Version: Other
Status: NEW
Severity: Normal
Priority: P5 - None
Component: Sys.XML
AssignedTo: atsushi at ximian.com
ReportedBy: tom_hindle at sil.org
QAContact: mono-bugs at lists.ximian.com
Found By: ---
Blocker: ---
Created an attachment (id=346837)
--> (http://bugzilla.novell.com/attachment.cgi?id=346837)
xslt
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1;
Trident/4.0; GTB6.3; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR
3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)
Using xpath descendants (//) with attribute match appears to be (at least?) 50
times slower on mono than on .NET
The following xslt on a faily small data set (1MB) takes over 50s, on mono and
under a second on .NET.
<xsl:variable name="LexEntries" select="//LexEntry"/>
<xsl:variable name="sAllStemNamesUsedInLexicalEntries">
<xsl:for-each select="$LexEntries">
<xsl:variable name="stemallos" select="//MoStemAllomorph[
@IsAbstract='0']"/>
</xsl:for-each>
</xsl:variable>
Removing the attribute match [ @IsAbstract='0'] reduces the time to about 6
seconds on mono.
Changing the //MoStemAllmorph to /M3Dump/Lexicon/Allomorphs/MoStemAllomorph
reduces the time to about 2 seconds
While doing both these changes reducing the time to about 1.5 seconds.
Attaching Test case
Reproducible: Always
Steps to Reproduce:
1. Compile and run attached test case
2.
3.
Actual Results:
Transform: ..\..\transform.xsl input file: ..\..\data.xml
Starting at: 09:12:31.7613750
Ending at: 09:13:24.4332500
Process took: 00:00:52.6718750 c:\out.txt
Press any key to continue . . .
Expected Results:
Transform: ..\..\transform.xsl input file: ..\..\data.xml
Starting at: 09:15:02.5113750
Ending at: 09:15:02.5895000
Process took: 00:00:00.0781250 c:\out.txt
Press any key to continue . . .
--
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
More information about the mono-bugs
mailing list