RE: [xsl] XSLT 1 vs. 2 stylesheet performance issues

Subject: RE: [xsl] XSLT 1 vs. 2 stylesheet performance issues
From: "Scott Trenda" <Scott.Trenda@xxxxxxxx>
Date: Wed, 30 Jul 2008 12:04:05 -0500
What sort of keys are you setting on your input data in XSLT 1.0? I've
found that any sort of keys dramatically increase the startup time as
your input document gets very large. I'd imagine it's because the
processor has to wait to start the processing until it's been able to
give a key value to every node in the document.

~ Scott

-----Original Message-----
From: Ilya Sterin [mailto:sterini@xxxxxxxxx]
Sent: Wednesday, July 30, 2008 11:38 AM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: [xsl] XSLT 1 vs. 2 stylesheet performance issues

I'm a bit stumped by the performance issues we're having.  We have an
xslt 1 compliant stylesheet that takes 10 minutes to run in xslt 1
processors (Saxon, Xalan, libxslt) and a few seconds in Saxon 9B.  I'm
not sure what it can possibly be.

We don't use anything out of the ordinary, we extensively use
for-each, choose, and if.  But again, I'm not sure why it would take
so much longer using an xslt 1 processor.  We need to utilize xslt 1
processor for various reasons if possible.

The processor seems to take most of the time in starting the
transformation.  Using oxygen, the debugger says Starting
transformation and stays there for about 10 minutes before
transforming in a matter of seconds.  The same is true with using any
of these processors in command line mode.

Is there some performance documents available anywhere that outline
how xslt 1 gets compiled and it's efficiencies/inefficiencies, how
things are indexed, etc....?  I searched the web with no luck.


Ilya Sterin

Current Thread