[ http://issues.apache.org/jira/browse/DERBY-573?page=all ]
Mamta A. Satoor updated DERBY-573:
----------------------------------
Attachment: Derby573OptimizerOverridesAndRunTimeStatistics011206.txt
I have attached a patch named
Derby573OptimizerOverridesAndRunTimeStatistics011206.txt to JIRA Derby573
Provide support for optimizer overrides in Derby. This patch enables users to
see the optimizer overrides specified in the sql as part of runtime statistics
info. This is achieved by changing the
generator so that these properties get passed from compile time to execute
time. This change in generate phase can be found in FromBaseTable,
BaseJoinStrategy and JoinNode. The changes in the other classes is for
returning the correct number of arguments to the scan. That change is in
getScanArgs method.
In addition, I have changed the existing lang/optimizerOverrides.sql to test
this patch. derbyall suite has run fine on my Windows XP m/c with Sun's jdk14.
svn stat
M java\engine\org\apache\derby\impl\sql\compile\BaseJoinStrategy.java
M java\engine\org\apache\derby\impl\sql\compile\NestedLoopJoinStrategy.java
M java\engine\org\apache\derby\impl\sql\compile\SelectNode.java
M java\engine\org\apache\derby\impl\sql\compile\JoinNode.java
M java\engine\org\apache\derby\impl\sql\compile\HashJoinStrategy.java
M java\engine\org\apache\derby\impl\sql\compile\FromBaseTable.java
M java\engine\org\apache\derby\impl\sql\compile\sqlgrammar.jj
M java\engine\org\apache\derby\impl\sql\compile\HalfOuterJoinNode.java
M
java\engine\org\apache\derby\impl\sql\execute\HashLeftOuterJoinResultSet.java
M java\engine\org\apache\derby\impl\sql\execute\HashJoinResultSet.java
M java\engine\org\apache\derby\impl\sql\execute\LastIndexKeyResultSet.java
M
java\engine\org\apache\derby\impl\sql\execute\GenericResultSetFactory.java
M java\engine\org\apache\derby\impl\sql\execute\DistinctScanResultSet.java
M java\engine\org\apache\derby\impl\sql\execute\HashScanResultSet.java
M java\engine\org\apache\derby\impl\sql\execute\InsertResultSet.java
M java\engine\org\apache\derby\impl\sql\execute\TableScanResultSet.java
M
java\engine\org\apache\derby\impl\sql\execute\rts\RealNestedLoopLeftOuterJoinStatistics.java
M
java\engine\org\apache\derby\impl\sql\execute\rts\RealHashLeftOuterJoinStatistics.java
M
java\engine\org\apache\derby\impl\sql\execute\rts\RealHashJoinStatistics.java
M
java\engine\org\apache\derby\impl\sql\execute\rts\RealJoinResultSetStatistics.java
M
java\engine\org\apache\derby\impl\sql\execute\rts\RealTableScanStatistics.java
M
java\engine\org\apache\derby\impl\sql\execute\rts\RealNestedLoopJoinStatistics.java
M
java\engine\org\apache\derby\impl\sql\execute\RealResultSetStatisticsFactory.java
M java\engine\org\apache\derby\impl\sql\execute\DependentResultSet.java
M java\engine\org\apache\derby\impl\sql\execute\BulkTableScanResultSet.java
M java\engine\org\apache\derby\impl\sql\execute\MergeJoinResultSet.java
M
java\engine\org\apache\derby\impl\sql\execute\NestedLoopJoinResultSet.java
M
java\engine\org\apache\derby\impl\sql\execute\NestedLoopLeftOuterJoinResultSet.java
M java\engine\org\apache\derby\impl\sql\execute\JoinResultSet.java
M java\engine\org\apache\derby\iapi\sql\compile\Optimizable.java
M java\engine\org\apache\derby\iapi\sql\execute\ResultSetFactory.java
M java\engine\org\apache\derby\iapi\reference\SQLState.java
M java\engine\org\apache\derby\loc\messages_en.properties
M
java\testing\org\apache\derbyTesting\functionTests\tests\lang\optimizerOverrides.sql
M
java\testing\org\apache\derbyTesting\functionTests\master\DerbyNet\optimizerOverrides.out
M
java\testing\org\apache\derbyTesting\functionTests\master\DerbyNetClient\optimizerOverrides.out
M
java\testing\org\apache\derbyTesting\functionTests\master\optimizerOverrides.out
> Provide support for optimizer overrides in Derby.
> -------------------------------------------------
>
> Key: DERBY-573
> URL: http://issues.apache.org/jira/browse/DERBY-573
> Project: Derby
> Type: New Feature
> Components: SQL
> Versions: 10.2.0.0
> Reporter: Mamta A. Satoor
> Assignee: Mamta A. Satoor
> Attachments: Derby573OptimizerOverridesAndRunTimeStatistics011206.txt,
> derby572OptimizerOverridesAndUpgrade120605.txt,
> derby572OptimizerOverridesAndUpgrade121105.txt,
> derby572OptimizerOverridesAndUpgrade121205.txt,
> derby573OptimierOverrides110805.txt, optimizeroverrides.html,
> optimizeroverrides.html
>
> Derby's query optimizer usually makes the best choice of join order and
> access path. The default join strategy ususally works the best too. However,
> there are some cases in which user may want to override the optimizer or the
> default values. Providing support for optimizer overrides will allow users to
> hand-tune the optimizer for queries.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira