dleslie 02/02/04 06:42:26 Modified: java commits.xml Log: Update for 2.3 Revision Changes Path 1.41 +226 -0 xml-xalan/java/commits.xml Index: commits.xml =================================================================== RCS file: /home/cvs/xml-xalan/java/commits.xml,v retrieving revision 1.40 retrieving revision 1.41 diff -u -r1.40 -r1.41 --- commits.xml 31 Jan 2002 18:35:01 -0000 1.40 +++ commits.xml 4 Feb 2002 14:42:26 -0000 1.41 @@ -174,4 +174,230 @@ <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="deferred"> +<Who>[EMAIL PROTECTED]</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> +<Commit category="xsltc"> +<Who>[EMAIL PROTECTED]</Who> +<DateCommitted>02/01/2002</DateCommitted> +<Modified>java/src/org/apache/xalan/xsltc/compiler + AttributeValueTemplate.java + AbsoluteLocationPath.java AbsolutePathPattern.java + AlternativePattern.java AncestorPattern.java + ApplyImports.java ApplyTemplates.java + AttributeSet.java BooleanCall.java BinOpExpr.java + BooleanExpr.java CallTemplate.java CastExpr.java + CeilingCall.java Choose.java Comment.java + DecimalFormatting.java ConcatCall.java + Constants.java ContainsCall.java Copy.java + CopyOf.java CurrentCall.java DocumentCall.java + EqualityExpr.java Import.java If.java + ElementAvailableCall.java Expression.java + Fallback.java FilterExpr.java FilterParentPath.java + FloorCall.java FlowList.java ForEach.java + FormatNumberCall.java FunctionAvailableCall.java + FunctionCall.java GenerateIdCall.java + IdKeyPattern.java Include.java IntExpr.java + Key.java KeyCall.java LangCall.java LastCall.java + LiteralAttribute.java LiteralElement.java + LiteralExpr.java LocalNameCall.java + NamespaceAlias.java LogicalExpr.java Message.java + Mode.java NameBase.java NameCall.java + NamespaceUriCall.java NotCall.java Number.java + NumberCall.java Output.java Param.java + ParentLocationPath.java ParameterRef.java + ParentPattern.java PositionCall.java + RelationalExpr.java Predicate.java Sort.java + ProcessingInstruction.java RealExpr.java + VariableRef.java RoundCall.java ValueOf.java + SimpleAttributeValue.java StartsWithCall.java + Stylesheet.java StringCall.java + StringLengthCall.java StepPattern.java + Template.java TestSeq.java Text.java + TopLevelElement.java TransletOutput.java + UnaryOpExpr.java UnionPathExpr.java + UnparsedEntityUriCall.java UseAttributeSets.java + LongExpr.java Variable.java Whitespace.java + XslAttribute.java WithParam.java XSLTC.java + XslElement.java UnsupportedElement.java + VariableBase.java VariableRefBase.java + FilteredAbsoluteLocationPath.java + SyntaxTreeNode.java Step.java UnresolvedRef.java + ProcessingInstructionPattern.java</Modified> +<Log>changed de.fub.bytecode to org.apache.bcel</Log> +</Commit> +<Commit category="xsltc"> +<Who>[EMAIL PROTECTED]</Who> +<DateCommitted>02/01/2002</DateCommitted> +<Modified>java/src/org/apache/xalan/xsltc/compiler/util + NamedMethodGenerator.java NodeCounterGenerator.java + NodeSetType.java NodeSortRecordGenerator.java + NodeType.java RealType.java ReferenceType.java + ResultTreeType.java RtMethodGenerator.java + SlotAllocator.java StringType.java + TestGenerator.java Util.java LongType.java</Modified> +<Log>changed de.fub.bytecode to org.apache.bcel</Log> +</Commit> +<Commit category="core"> +<Who>[EMAIL PROTECTED]</Who> +<DateCommitted>02/01/2002</DateCommitted> +<Modified>java/src/org/apache/xml/utils FastStringBuffer.java</Modified> +<Log>Bugzilla 6182. Darned fence posts; always either too many or not enough... +<grin/></Log> +</Commit> +<Commit category="xsltc"> +<Who>[EMAIL PROTECTED]</Who> +<DateCommitted>02/01/2002</DateCommitted> +<Modified>java/src/org/apache/xalan/xsltc/compiler/util + AttributeSetMethodGenerator.java BooleanType.java + ClassGenerator.java CompareGenerator.java + FilterGenerator.java IntType.java + MatchGenerator.java MethodGenerator.java + MethodType.java Type.java VoidType.java</Modified> +<Log>changed de.fub.bytecode to org.apache.bcel</Log> +</Commit> +<Commit category="core"> +<Who>[EMAIL PROTECTED]</Who> +<DateCommitted>02/01/2002</DateCommitted> +<Modified>java/src/org/apache/xalan/transformer TransformerImpl.java + java/src/org/apache/xpath VariableStack.java + XPathContext.java</Modified> +<Log>Bug 6156: Change variable stack reset to just get a new object. Also make +sure that the stack of result tree fragments is also cleaned ot during a reset.</Log> +</Commit> </Commits>
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
