You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by dl...@apache.org on 2002/01/31 18:52:07 UTC

cvs commit: xml-xalan/java build.xml commits.xml

dleslie     02/01/31 09:52:07

  Modified:    java     build.xml commits.xml
  Log:
  1. Removed copying of todo.html from build.xml.
  2. Regenerated commits list (commits.xml).
  
  Revision  Changes    Path
  1.156     +2 -4      xml-xalan/java/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/xml-xalan/java/build.xml,v
  retrieving revision 1.155
  retrieving revision 1.156
  diff -u -r1.155 -r1.156
  --- build.xml	25 Jan 2002 15:53:20 -0000	1.155
  +++ build.xml	31 Jan 2002 17:52:07 -0000	1.156
  @@ -41,7 +41,7 @@
   
   Copyright:
     Copyright (c) 1999-2001 The Apache Software Foundation.
  -   $Id: build.xml,v 1.155 2002/01/25 15:53:20 curcuru Exp $
  +   $Id: build.xml,v 1.156 2002/01/31 17:52:07 dleslie Exp $
   ==================================================================== -->
   
   <project name="Xalan" default="jar" basedir=".">
  @@ -181,7 +181,7 @@
     <!-- Creates output build directories and doc prerequistes               -->
     <!-- =================================================================== -->
     <target name="prepare">
  -    <echo message="Project:${Name-in-docs} version:${version} build.xml $Revision: 1.155 $"/>
  +    <echo message="Project:${Name-in-docs} version:${version} build.xml $Revision: 1.156 $"/>
       <mkdir dir="${build.dir}"/>
       <mkdir dir="${build.classes}"/>
       <!-- Note that all testing-related targets *must* depend on 
  @@ -849,8 +849,6 @@
          <arg line="targetDirectory=${site.dir} ${site.book} ${xdocs.style}"/>
       </java>
   
  -    <!-- put todo.html in the site directory -->     
  -    <copy file="${build.docs}/todo.html" todir="${site.dir}"/>
       <!-- put xalan design doc in the site design subdir -->
       <copy todir="${site.dir}/design">
         <fileset dir="${build.docs}/design"/>
  
  
  
  1.39      +270 -0    xml-xalan/java/commits.xml
  
  Index: commits.xml
  ===================================================================
  RCS file: /home/cvs/xml-xalan/java/commits.xml,v
  retrieving revision 1.38
  retrieving revision 1.39
  diff -u -r1.38 -r1.39
  --- commits.xml	22 Jan 2002 21:10:49 -0000	1.38
  +++ commits.xml	31 Jan 2002 17:52:07 -0000	1.39
  @@ -42,4 +42,274 @@
   <Modified>java/src/org/apache/xml/utils SuballocatedIntVector.java</Modified>
   <Log>&lt;blush&gt;Wrong side of the fencepost...&lt;/blush></Log>
   </Commit>
  +<Commit category="core">
  +<Who>jkesselm@apache.org</Who>
  +<DateCommitted>01/23/2002</DateCommitted>
  +<Modified>java/src/org/apache/xalan/templates ElemTemplate.java
  + java/src/org/apache/xalan/transformer TransformerImpl.java
  + java/src/org/apache/xml/dtm DTMManager.java
  + java/src/org/apache/xml/dtm/ref DTMDefaultBase.java
  + DTMManagerDefault.java
  + java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java
  + java/src/org/apache/xpath XPathContext.java</Modified>
  +<Added>java/src/org/apache/xml/dtm/ref/sax2dtm SAX2RTFDTM.java</Added>
  +<Log>These changes allow us to store multiple Result Tree Fragment (RTF)
  + document trees (used when an XSLT variable contains a constructed
  + set of nodes) into a single DTM object rather than using a new DTM
  + for each RTF. They also permit "tail-pruning" this shared DTM to
  + reuse that space as the variables go out of scope.
  +
  + The result is a slight performance improvement, and a much more
  + significant improvement in storage efficiency. Stylesheets which
  + use RTFs heavily should now run in much less memory; in
  + one testcase, our "working set" heap size (storage actually in
  + use, not counting objects released but not yet GC'd) dropped
  + from 12-15MB down to 3-6MB, and heap churn (how quickly
  + storage was being allocated and discarded) also reduced
  + substantially.
  +
  + The code changes needed to support this new scheme are
  + surprisingly small. And I believe it may be possible to reduce them
  + further, if we're willing to merge the SAX2RTFDTM subclass back
  + into its SAX2DTM superclass. I believe that could be done with
  + very little adverse impact on other uses of SAX2DTM... but I felt it
  + was safer to defer that decision for now.</Log>
  +</Commit>
  +<Commit category="xsltc">
  +<Who>tmiller@apache.org</Who>
  +<DateCommitted>01/24/2002</DateCommitted>
  +<Modified>java/src/org/apache/xalan/xsltc/runtime TextOutput.java</Modified>
  +<Log>bug 1520 fix, escape chars over 0080 instead of 00FF</Log>
  +</Commit>
  +<Commit category="xsltc">
  +<Who>tmiller@apache.org</Who>
  +<DateCommitted>01/24/2002</DateCommitted>
  +<Modified>java/src/org/apache/xalan/xsltc/runtime TextOutput.java</Modified>
  +<Log>bug 1520, adjusted 0080 to 007F in ASCII cutoff</Log>
  +</Commit>
  +<Commit category="core">
  +<Who>mmidy@apache.org</Who>
  +<DateCommitted>01/25/2002</DateCommitted>
  +<Modified>java/src/org/apache/xalan/transformer TransformerImpl.java</Modified>
  +<Log>Bug 5982 and 6022. The variable stack was not being cleared accross 
  +transforms so that when the transformer is reused, we were using nodesets from 
  +the previous transform which were using a different DTM. Note that we want keep 
  +any variables that have been set externally by the user (using 
  +Transformer.setParameter()).</Log>
  +</Commit>
  +<Commit category="core">
  +<Who>mmidy@apache.org</Who>
  +<DateCommitted>01/28/2002</DateCommitted>
  +<Modified>java/src/org/apache/xpath/res XPATHErrorResources.java</Modified>
  +<Log>bug 4762: Fixed the duplicate error message in XPATH.</Log>
  +</Commit>
  +<Commit category="core">
  +<Who>jkesselm@apache.org</Who>
  +<DateCommitted>01/28/2002</DateCommitted>
  +<Modified>java/src/org/apache/xalan/transformer TransformerImpl.java</Modified>
  +<Log>Bugzilla 4054: Retain previously set output properties when adding new ones.</Log>
  +</Commit>
  +<Commit category="core">
  +<Who>mmidy@apache.org</Who>
  +<DateCommitted>01/28/2002</DateCommitted>
  +<Modified>java/src/org/apache/xalan/transformer TransformerImpl.java</Modified>
  +<Log>Bug 5872. We were using a constructor of TranformerException without the 
  +locator information. Changed to code to use a locator if info is available.</Log>
  +</Commit>
  +<Commit category="core">
  +<Who>dleslie@apache.org</Who>
  +<DateCommitted>01/30/2002</DateCommitted>
  +<Modified>java/src/org/apache/xalan/lib NodeInfo.java</Modified>
  +<Log>Changed "system id" to "public identifier" in javadoc
  + comments for publicId() methods.</Log>
  +</Commit>
  +<Commit category="core">
  +<Who>jkesselm@apache.org</Who>
  +<DateCommitted>01/30/2002</DateCommitted>
  +<Modified>java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java</Modified>
  +<Log>Bugzilla 2617, part 1: Construct the data structures and access them 
  +correctly.
  + Ignore too-late-to-be-safe requests to enable this feature.
  +
  + This doesn't resolve how to rewrite higher-level code so it makes the
  + request early enough to be useful.</Log>
  +</Commit>
  +<Commit category="core">
  +<Who>mmidy@apache.org</Who>
  +<DateCommitted>01/30/2002</DateCommitted>
  +<Modified>java/src/org/apache/xalan/templates StylesheetComposed.java
  + StylesheetRoot.java TemplateList.java
  + java/src/org/apache/xalan/transformer TransformerImpl.java</Modified>
  +<Log>Bug 4987: Changed Apply-imports logic to only apply imports to stylesheets 
  +that are direct imports. The logic for includes has not changed, we will 
  +apply-imports to any stylesheet that is imported as a result of an inclusion. 
  +Note: had to change the order when includes and imports are recomposed!</Log>
  +</Commit>
  +<Commit category="core">
  +<Who>jkesselm@apache.org</Who>
  +<DateCommitted>01/31/2002</DateCommitted>
  +<Modified>java/src/org/apache/xalan/lib NodeInfo.java
  + java/src/org/apache/xalan/processor
  + TransformerFactoryImpl.java
  + java/src/org/apache/xalan/transformer TransformerImpl.java
  + java/src/org/apache/xalan/xslt Process.java
  + java/src/org/apache/xml/dtm/ref DTMManagerDefault.java
  + java/src/org/apache/xml/dtm/ref/sax2dtm SAX2DTM.java
  + SAX2RTFDTM.java
  + java/src/org/apache/xml/utils DefaultErrorHandler.java</Modified>
  +<Log>Bugzilla 2617: Recreated missing code, changed controls to ensure
  + that this mode gets set early enough to be useful and can't be broken
  + by being turned on and off during execution.
  +
  + NOTE: Current implementation relies on a global static flag in
  + TransformerFactoryImpl. We need to rearchitect our APIs slightly
  + so configuration hints of this kind can be passed down from top-level
  + objects to the back-end code more elegantly. Revisit in future
  + releases.</Log>
  +</Commit>
  +<Commit category="core">
  +<Who>mmidy@apache.org</Who>
  +<DateCommitted>01/31/2002</DateCommitted>
  +<Modified>java/src/org/apache/xalan/templates ElemApplyTemplates.java</Modified>
  +<Log>Bug 5505: Need to resolve params before we do anything else, so move code 
  +that does that above the code that sets up the different node stacks.</Log>
  +</Commit>
  +<Commit category="core">
  +<Who>sboag@apache.org</Who>
  +<DateCommitted>01/31/2002</DateCommitted>
  +<Modified>java/src/org/apache/xalan/extensions Tag:
  + SBOAG_BRANCH_OPTIMIZATION2
  + ExtensionHandlerJavaClass.java
  + java/src/org/apache/xalan/processor Tag:
  + SBOAG_BRANCH_OPTIMIZATION2 ProcessorKey.java
  + ProcessorPreserveSpace.java
  + ProcessorStripSpace.java StylesheetHandler.java
  + XSLTAttributeDef.java XSLTElementProcessor.java
  + java/src/org/apache/xalan/templates Tag:
  + SBOAG_BRANCH_OPTIMIZATION2 AVT.java AVTPart.java
  + AVTPartSimple.java AVTPartXPath.java
  + ElemApplyTemplates.java ElemAttribute.java
  + ElemCallTemplate.java ElemChoose.java
  + ElemCopyOf.java ElemElement.java
  + ElemExtensionCall.java ElemForEach.java ElemIf.java
  + ElemLiteralResult.java ElemNumber.java
  + ElemTemplateElement.java ElemValueOf.java
  + ElemVariable.java ElemWhen.java ElemWithParam.java
  + FuncDocument.java FuncKey.java Stylesheet.java
  + StylesheetRoot.java WhiteSpaceInfo.java
  + java/src/org/apache/xalan/trace Tag:
  + SBOAG_BRANCH_OPTIMIZATION2 TraceManager.java
  + java/src/org/apache/xalan/transformer Tag:
  + SBOAG_BRANCH_OPTIMIZATION2 KeyIterator.java
  + KeyManager.java KeyRefIterator.java KeyTable.java
  + NodeSorter.java ResultTreeHandler.java
  + TransformerImpl.java
  + java/src/org/apache/xml/dtm/ref Tag:
  + SBOAG_BRANCH_OPTIMIZATION2 DTMNodeList.java
  + java/src/org/apache/xml/dtm/ref/dom2dtm Tag:
  + SBOAG_BRANCH_OPTIMIZATION2 DOM2DTM.java
  + java/src/org/apache/xml/utils Tag:
  + SBOAG_BRANCH_OPTIMIZATION2 DefaultErrorHandler.java
  + NodeVector.java SuballocatedIntVector.java
  + java/src/org/apache/xpath Tag: SBOAG_BRANCH_OPTIMIZATION2
  + Expression.java VariableStack.java XPath.java
  + XPathContext.java
  + java/src/org/apache/xpath/axes Tag:
  + SBOAG_BRANCH_OPTIMIZATION2 AttributeIterator.java
  + AxesWalker.java ChildIterator.java
  + ChildTestIterator.java DescendantIterator.java
  + FilterExprWalker.java IteratorPool.java
  + LocPathIterator.java MatchPatternIterator.java
  + OneStepIterator.java OneStepIteratorForward.java
  + PredicatedNodeTest.java ReverseAxesWalker.java
  + SelfIteratorNoPredicate.java UnionPathIterator.java
  + WalkerFactory.java WalkingIterator.java
  + WalkingIteratorSorted.java
  + java/src/org/apache/xpath/compiler Tag:
  + SBOAG_BRANCH_OPTIMIZATION2 Compiler.java
  + java/src/org/apache/xpath/functions Tag:
  + SBOAG_BRANCH_OPTIMIZATION2 FuncBoolean.java
  + FuncCount.java FuncExtFunction.java Function.java
  + Function2Args.java Function3Args.java
  + FunctionMultiArgs.java FunctionOneArg.java
  + java/src/org/apache/xpath/objects Tag:
  + SBOAG_BRANCH_OPTIMIZATION2 XNodeSet.java
  + XNodeSetForDOM.java XNumber.java XObject.java
  + XRTreeFrag.java XRTreeFragSelectWrapper.java
  + XString.java XStringForFSB.java
  + java/src/org/apache/xpath/operations Tag:
  + SBOAG_BRANCH_OPTIMIZATION2 Bool.java Equals.java
  + Operation.java UnaryOperation.java Variable.java
  + java/src/org/apache/xpath/patterns Tag:
  + SBOAG_BRANCH_OPTIMIZATION2 FunctionPattern.java
  + NodeTest.java StepPattern.java UnionPattern.java</Modified>
  +<Added>java/src/org/apache/xalan/processor Tag:
  + SBOAG_BRANCH_OPTIMIZATION2 WhitespaceInfoPaths.java
  + java/src/org/apache/xalan/templates Tag:
  + SBOAG_BRANCH_OPTIMIZATION2 AbsPathChecker.java
  + ElemVariablePsuedo.java
  + RedundentExprEliminator.java VarNameCollector.java
  + XSLTVisitable.java XSLTVisitor.java
  + XUnresolvedVariableSimple.java
  + java/src/org/apache/xpath/axes Tag:
  + SBOAG_BRANCH_OPTIMIZATION2 BasicTestIterator.java
  + FilterExprIterator.java
  + FilterExprIteratorSimple.java
  + HasPositionalPredChecker.java NodeSequence.java
  + PathComponent.java UnionChildIterator.java
  + java/src/org/apache/xpath/operations Tag:
  + SBOAG_BRANCH_OPTIMIZATION2 VariableSafeAbsRef.java</Added>
  +<Log>Redundent Expression Elimination branch checkin. This branch is for major
  + optimization work being done. I expect it to be folded in on the main branch
  + within a couple of weeks.
  +
  + Goal of branch: around 50% overall performance gain.
  +
  + Major architectural changes
  + 1) Rip out cacheing in all iterators, and move the caching into XNodeSet 
  +(actually NodeSequence where the caching is done derives from XObject and 
  +XNodeSet derives from NodeSequence). Lots of other changes went into this, 
  +including rewriting of some of the xsl:key stuff.
  +
  + 2) Implementation of a Visitor mechanism for the stylesheet and xpath 
  +components. Each component for an XPath event is passed an ExpressionOwner, 
  +which just has a getExpression and setExpression method, which allows us to 
  +create a list of these, and then be able to do rewrites. This should be a 
  +generally useful mechanism for all sorts of stuff, and should be considered a 
  +public API.
  +
  + 3) Implementation of deepEquality methods for all XPath components, which 
  +allows us to see if two components are equal.
  +
  + 4) Implementation of RedundentExprEliminator, which is a derivative from the 
  +new XSLTVisitor class, which runs over the stylesheet collecting xpaths within 
  +the same scope, and absolute xpaths that are not context dependent. These are 
  +then each reduced by walking the list and checking for deep equality (though 
  +global paths are always reduced). Reduction takes place by creating variables 
  +that have a special namespace and a non-legal local name. Both full and 
  +partial path reduction done.
  +
  + Not done yet: Add back in the xsl:key caching that I ripped out (not a big 
  +deal). Could be skipped, with some risk.
  +
  + Not done yet: Implement isLast function. With the new stuff, the last() 
  +function will be slower, so, since most cases are just checking to see if an 
  +item is the last, I want to rewrite foo[last()] patterns to 
  +foo[xalan:isLast()]. Could be skipped, with some risk.
  +
  + Davanum performance test result: 4x increase in performance.
  +
  + Datapower performance suite results: very slight decrease in overall 
  +performance. :-(
  +
  + Smoke test results: All clear when run with Xerces 1.
  +
  + To Do on this branch:
  +
  + Christina trace/debug API enhancements.
  + Possible unroll of recursive evaluation.
  + Implement serializers directly off of ResultTreeHandler (and provide 
  +ContentHandler adapters).
  + Specialize and optimize serializers for 80% cases.</Log>
  +</Commit>
   </Commits>
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-cvs-help@xml.apache.org