Details

    • Type: New Feature New Feature
    • Status: Open
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: CurrentCVS
    • Fix Version/s: None
    • Component/s: XalanC
    • Labels:
      None

      Description

      Have support for supporting profiling in testXSLT.
      Profiling is the indication of how many times each element in the stylesheet was executed and how long it took.

      Example usage:
      bash-2.05b$ time ./testXSLT -in /tmp/v5.xml -out /tmp/t.xml -xsl /tmp/copy.xsl

      real 0m22.116s
      user 0m20.950s
      sys 0m0.430s
      bash-2.05b$

      Now where do I spend my time? Beware profiling itself takes time.

      bash-2.05b$ time bin/testXSLT -in /tmp/v5.xml -out /tmp/out.xml -xsl /tmp/copy.xsl -profile /tmp/profile.xml

      real 1m18.900s
      user 0m50.330s
      sys 0m27.390s

      bash-2.05b$ cat /tmp/profile.xml
      <profile>
      <profileData count="1" duration="0" line="-1" col="-1" uri="file:///tmp/copy.xsl" />
      <profileData count="952510" duration="4580000" line="12" col="39" uri="file:///tmp/copy.xsl" />
      <profileData count="476255" duration="7780000" line="13" col="38" uri="file:///tmp/copy.xsl" />
      <profileData count="476255" duration="7270000" line="14" col="49" uri="file:///tmp/copy.xsl" />
      <profileData count="1" duration="0" line="-1" col="-1" uri="file:///tmp/copy.xsl" />
      <profileData count="832672" duration="5810000" line="18" col="28" uri="file:///tmp/copy.xsl" />
      <profileData count="1439110" duration="8890000" line="24" col="28" uri="file:///tmp/copy.xsl" />
      </profile>

      bash-2.05b$ cat /tmp/copy.xsl
      <?xml version="1.0" encoding="UTF-8"?>
      <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions" xmlns:xdt="http://www.w3.org/2005/xpath-datatypes">
      <xsl:output method="xml" indent="yes"/>
      <xsl:template match="*">
      <xsl:element name="

      {local-name(.)}

      ">
      <xsl:apply-templates select="@*"/>
      <xsl:apply-templates select="child::node()"/>
      </xsl:element>
      </xsl:template>
      <xsl:template match="text()">
      <xsl:copy-of select="."/>
      </xsl:template>
      <xsl:template match="comment()">
      <xsl:copy-of select="."/>
      </xsl:template>
      <xsl:template match="@*">
      <xsl:copy-of select="."/>
      </xsl:template>
      </xsl:stylesheet>
      bash-2.05b$

      Code is attached

        Activity

        Hide
        Alain Pannetier added a comment -

        Hello dear committers,

        Are there any plans to include this patch in an upcoming release ?
        It does not seem to be included in the HEAD.

        Altough I can see some activity on the HEAD, there does not seem to be anything going in the profiling area.

        Is it a good strategy for me to check out some branch/tag slightly before the date this patch was submitted and apply the patch myself ?
        Or is there instead a smarter way of proceeding ?

        Thx

        Alain Pannetier

        Show
        Alain Pannetier added a comment - Hello dear committers, Are there any plans to include this patch in an upcoming release ? It does not seem to be included in the HEAD. Altough I can see some activity on the HEAD, there does not seem to be anything going in the profiling area. Is it a good strategy for me to check out some branch/tag slightly before the date this patch was submitted and apply the patch myself ? Or is there instead a smarter way of proceeding ? Thx Alain Pannetier

          People

          • Assignee:
            Unassigned
            Reporter:
            Marc Pawlowsky
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:

              Development