Uploaded image for project: 'Axis'
  1. Axis
  2. AXIS-2179

Configuration property axis.xml.reuseParsers not documented - significant performance boost

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.2.1
    • None
    • Documentation
    • None
    • JDK 1.5

    Description

      After noticing a performance bottleneck around creating new SAX parsers, I noticed that the code creates a new one from the factory each time.

      Digging into the code, I discovered that the XMLUtils.java class has some static initialization to reuse parsers - cool - except the feature isn't in any documentation that I could find, and it is turned off by default.

      Before starting Tomcat, I did an "export JAVA_OPTS=-Daxis.xml.reuseParsers=true", and got a 1.5-1.6 ms improvement, on average for each SOAP invocation.

      That's a huge improvement, as far as I'm concerned.

      Being slightly unfamiliar with commons-discovery, I couldn't figure out how to set this property except by using JVM-wide system properties. It would be great to have documentation on that too.

      Of course, it would be neat if the default for this functionality was true, and the option was spurious, but I cannot tell immediately why that would be unsafe. Barring that, documentation is essential.

      Attachments

        Activity

          People

            Unassigned Unassigned
            eric@tibco.com Eric Johnson
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: