Top Description Fields Constructors Methods
org.apache.derby.impl.sql.compile

public Class DefaultOptTrace

extends Object
implements OptTrace
Class Inheritance
All Implemented Interfaces
org.apache.derby.iapi.sql.compile.OptTrace
Imports
java.io.PrintWriter, org.apache.derby.shared.common.sanity.SanityManager, org.apache.derby.iapi.sql.compile.AccessPath, .CostEstimate, .JoinStrategy, .OptTrace, .Optimizable, .OptimizableList, .Optimizer, .RequiredRowOrdering, org.apache.derby.iapi.sql.dictionary.ConglomerateDescriptor, .IndexRowGenerator, org.apache.derby.iapi.util.JBitSet

This is the default optimizer tracing logic for use when a custom tracer wasn't specified.

Field Summary

Modifier and TypeField and Description
private StringBuilder

Constructor Summary

AccessConstructor and Description
public
DefaultOptTrace()

Make a DefaultOptTrace

Method Summary

Modifier and TypeMethod and Description
private void
appendTraceString(String traceString)

Append a string to the optimizer trace

public void
private String
private String
reportCostForTable(Object cost, int tableNumber)

private String
reportCostIncluding(String selectivityType, CostEstimate cost, int tableNumber)

private String
reportJoinOrder(String prefix, boolean addJoinOrderNumber, int joinOrderNumber, int joinPosition, int[] joinOrder, JBitSet assignedTableMap)

public void
traceAddingUnorderedOptimizable(int predicateCount)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceAddingUnorderedOptimizable.

Say that we're adding an unordered optimizable.

public void
traceChangingAccessPathForTable(int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceChangingAccessPathForTable.

Say that we're considering a different access path for a table.

public void
traceCheapestPlanSoFar(int planType, CostEstimate currentCost)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCheapestPlanSoFar.

Report the cost of the cheapest plan so far.

public void
public void
traceCompositeSelectivityFromStatistics(double statCompositeSelectivity)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCompositeSelectivityFromStatistics.

Report the selectivity calculated from SYSSTATISTICS.

public void
traceConsideringConglomerate(ConglomerateDescriptor cd, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceConsideringConglomerate.

Report that we are considering a conglomerate for a table.

public void
traceConsideringJoinStrategy(JoinStrategy js, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceConsideringJoinStrategy.

Say that we're considering a particular join strategy on a particular table.

public void
traceConstantStartStopPositions()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceConstantStartStopPositions.

Say that we're setting the lock mode to MODE_RECORD because the start and stop positions are all constant.

public void
traceCostIncludingCompositeSelectivityFromStats(CostEstimate cost, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCostIncludingCompositeSelectivityFromStats.

Report the cost based on selectivities coming out of SYSSTATISTICS.

public void
traceCostIncludingExtra1stColumnSelectivity(CostEstimate cost, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCostIncludingExtra1stColumnSelectivity.

Report the cost of a scan given the selectivity of an extra first column.

public void
public void
public void
traceCostIncludingExtraStartStop(CostEstimate cost, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCostIncludingExtraStartStop.

Report the cost if we include an extra start/stop.

public void
traceCostIncludingStatsForIndex(CostEstimate cost, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCostIncludingStatsForIndex.

Report the cost based on index statistics.

public void
traceCostOfConglomerateScan(int tableNumber, ConglomerateDescriptor cd, CostEstimate costEstimate, int numExtraFirstColumnPreds, double extraFirstColumnSelectivity, int numExtraStartStopPreds, double extraStartStopSelectivity, int startStopPredCount, double statStartStopSelectivity, int numExtraQualifiers, double extraQualifierSelectivity, int numExtraNonQualifiers, double extraNonQualifierSelectivity)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCostOfConglomerateScan.

Report the cost of a conglomerate scan.

public void
traceCostOfNoncoveringIndex(CostEstimate cost, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCostOfNoncoveringIndex.

Report the cost of using a non-covering index.

public void
traceCostOfNScans(int tableNumber, double rowCount, CostEstimate cost)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCostOfNScans.

Report the cost of scanning a table a certain number of times

public void
public void
traceCostWithSortAvoidance(CostEstimate currentSortAvoidanceCost)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCostWithSortAvoidance.

Report the cost with sort avoidance.

public void
traceCurrentPlanAvoidsSort(CostEstimate bestCost, CostEstimate currentSortAvoidanceCost)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCurrentPlanAvoidsSort.

Say that the current plan avoids a sort.

public void
traceEndQueryBlock()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceEndQueryBlock.

End tracing the optimization of a query block.

public void
traceEstimatingCostOfConglomerate(ConglomerateDescriptor cd, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceEstimatingCostOfConglomerate.

Report the cost of using a particular conglomerate to scan a table.

public void
traceHashKeyColumns(int[] hashKeyColumns)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceHashKeyColumns.

Report the columns being traced

public void
traceIllegalUserJoinOrder()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceIllegalUserJoinOrder.

Say that the user specified an impossible join order.

public void
traceJoinOrderConsideration(int joinPosition, int[] proposedJoinOrder, JBitSet assignedTableMap)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceJoinOrderConsideration.

Say that we're considering a join order.

public void
traceLookingForSpecifiedIndex(String indexName, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceLookingForSpecifiedIndex.

Say that we're looking for an index specified by optimizer hints.

public void
traceModifyingAccessPaths(int optimizerID)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceModifyingAccessPaths.

Say that we're modifying access paths.

public void
traceNextAccessPath(String baseTable, int predicateCount)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceNextAccessPath.

Report that we are advancing to the next access path for the table.

public void
traceNoBestPlan()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceNoBestPlan.

Say that we couldn't find a best plan.

public void
traceNoMoreConglomerates(int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceNoMoreConglomerates.

Say that we have exhausted the conglomerate possibilities for a table.

public void
traceNonCoveringIndexCost(double cost, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceNonCoveringIndexCost.

Say that we're considering a non-covering index.

public void
traceNoStartStopPosition()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceNoStartStopPosition.

Say that we're setting the lock mode to MODE_TABLE because there is no start/stop position.

public void
traceOptimizingJoinNode()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceOptimizingJoinNode.

Say that we're starting to optimize a join node

public void
traceRememberingBestAccessPath(AccessPath accessPath, int tableNumber, int planType)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceRememberingBestAccessPath.

Report that we've found a best access path.

public void
public void
traceRememberingBestJoinOrder(int joinPosition, int[] bestJoinOrder, int planType, CostEstimate planCost, JBitSet assignedTableMap)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceRememberingBestJoinOrder.

Say that we are remembering the current plan as the best join order so far.

public void
public void
traceRememberingBestUnknownAccessPathSubstring(AccessPath ap, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceRememberingBestUnknownAccessPathSubstring.

Report an optimizer failure, e.g., while optimizing an outer join

public void
traceRememberingJoinStrategy(JoinStrategy joinStrategy, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceRememberingJoinStrategy.

Say that we've found a new best join strategy for the table.

public void
traceScanningHeapWithUniqueKey()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceScanningHeapWithUniqueKey.

Say that we're considering scanning a heap even though we have a unique key match.

public void
traceShortCircuiting(boolean timeExceeded, Optimizable thisOpt, int joinPosition)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceShortCircuiting.

Say that we short-circuited a join order.

public void
traceSingleMatchedRowCost(double cost, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceSingleMatchedRowCost.

Report the cost of a scan which will match exactly one row.

public void
traceSkipHashJoinNoHashKeys()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceSkipHashJoinNoHashKeys.

Say we won't consider a hash join because there are no hash key columns.

public void
traceSkippingBecauseTooMuchMemory(int maxMemoryPerTable)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceSkippingBecauseTooMuchMemory.

Say that we are skipping a plan because it consumes too much memory.

public void
traceSkippingJoinOrder(int nextOptimizable, int joinPosition, int[] proposedJoinOrder, JBitSet assignedTableMap)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceSkippingJoinOrder.

Say that we're skipping the join order starting with the next optimizable.

public void
traceSkipUnmaterializableHashJoin()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceSkipUnmaterializableHashJoin.

Say that we won't consider a hash join because the result can't be materialized

public void
public void
traceSortNeededForOrdering(int planType, RequiredRowOrdering requiredRowOrdering)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceSortNeededForOrdering.

Report that this plan needs a sort

public void
traceStartQueryBlock(long timeOptimizationStarted, int optimizerID, OptimizableList optimizableList)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceStartQueryBlock.

Start optimizer tracing for a query block.

public void
traceStartStatement(String statementText)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceStartStatement.

Start the start of tracing a statement.

public void
traceTimeout(long currentTime, CostEstimate bestCost)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceTimeout.

Say that the optimizer ran out of time.

public void
traceUserJoinOrderOptimized()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceUserJoinOrderOptimized.

Say that we have optimized the user-specified join order.

public void
traceVacuous()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceVacuous.

Say that there's nothing to optimizer.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

_bufferback to summary
private StringBuilder _buffer

Constructor Detail

DefaultOptTraceback to summary
public DefaultOptTrace()

Make a DefaultOptTrace

Method Detail

appendTraceStringback to summary
private void appendTraceString(String traceString)

Append a string to the optimizer trace

printToWriterback to summary
public void printToWriter(PrintWriter out)

Implements org.apache.derby.iapi.sql.compile.OptTrace.printToWriter.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.printToWriter.

Print the trace so far.

reportConglomerateDescriptorback to summary
private String reportConglomerateDescriptor(ConglomerateDescriptor cd)
reportCostForTableback to summary
private String reportCostForTable(Object cost, int tableNumber)
reportCostIncludingback to summary
private String reportCostIncluding(String selectivityType, CostEstimate cost, int tableNumber)
reportJoinOrderback to summary
private String reportJoinOrder(String prefix, boolean addJoinOrderNumber, int joinOrderNumber, int joinPosition, int[] joinOrder, JBitSet assignedTableMap)
traceAddingUnorderedOptimizableback to summary
public void traceAddingUnorderedOptimizable(int predicateCount)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceAddingUnorderedOptimizable.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceAddingUnorderedOptimizable.

Say that we're adding an unordered optimizable.

traceChangingAccessPathForTableback to summary
public void traceChangingAccessPathForTable(int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceChangingAccessPathForTable.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceChangingAccessPathForTable.

Say that we're considering a different access path for a table.

traceCheapestPlanSoFarback to summary
public void traceCheapestPlanSoFar(int planType, CostEstimate currentCost)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCheapestPlanSoFar.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceCheapestPlanSoFar.

Report the cost of the cheapest plan so far.

traceCompleteJoinOrderback to summary
public void traceCompleteJoinOrder()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCompleteJoinOrder.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceCompleteJoinOrder.

Say that we have a complete join order.

traceCompositeSelectivityFromStatisticsback to summary
public void traceCompositeSelectivityFromStatistics(double statCompositeSelectivity)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCompositeSelectivityFromStatistics.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceCompositeSelectivityFromStatistics.

Report the selectivity calculated from SYSSTATISTICS.

traceConsideringConglomerateback to summary
public void traceConsideringConglomerate(ConglomerateDescriptor cd, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceConsideringConglomerate.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceConsideringConglomerate.

Report that we are considering a conglomerate for a table.

traceConsideringJoinStrategyback to summary
public void traceConsideringJoinStrategy(JoinStrategy js, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceConsideringJoinStrategy.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceConsideringJoinStrategy.

Say that we're considering a particular join strategy on a particular table.

traceConstantStartStopPositionsback to summary
public void traceConstantStartStopPositions()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceConstantStartStopPositions.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceConstantStartStopPositions.

Say that we're setting the lock mode to MODE_RECORD because the start and stop positions are all constant.

traceCostIncludingCompositeSelectivityFromStatsback to summary
public void traceCostIncludingCompositeSelectivityFromStats(CostEstimate cost, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCostIncludingCompositeSelectivityFromStats.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceCostIncludingCompositeSelectivityFromStats.

Report the cost based on selectivities coming out of SYSSTATISTICS.

traceCostIncludingExtra1stColumnSelectivityback to summary
public void traceCostIncludingExtra1stColumnSelectivity(CostEstimate cost, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCostIncludingExtra1stColumnSelectivity.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceCostIncludingExtra1stColumnSelectivity.

Report the cost of a scan given the selectivity of an extra first column.

traceCostIncludingExtraNonQualifierSelectivityback to summary
public void traceCostIncludingExtraNonQualifierSelectivity(CostEstimate cost, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCostIncludingExtraNonQualifierSelectivity.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceCostIncludingExtraNonQualifierSelectivity.

Report the cost if we include an extra non-qualifier.

traceCostIncludingExtraQualifierSelectivityback to summary
public void traceCostIncludingExtraQualifierSelectivity(CostEstimate cost, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCostIncludingExtraQualifierSelectivity.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceCostIncludingExtraQualifierSelectivity.

Report the cost if we include an extra qualifier.

traceCostIncludingExtraStartStopback to summary
public void traceCostIncludingExtraStartStop(CostEstimate cost, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCostIncludingExtraStartStop.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceCostIncludingExtraStartStop.

Report the cost if we include an extra start/stop.

traceCostIncludingStatsForIndexback to summary
public void traceCostIncludingStatsForIndex(CostEstimate cost, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCostIncludingStatsForIndex.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceCostIncludingStatsForIndex.

Report the cost based on index statistics.

traceCostOfConglomerateScanback to summary
public void traceCostOfConglomerateScan(int tableNumber, ConglomerateDescriptor cd, CostEstimate costEstimate, int numExtraFirstColumnPreds, double extraFirstColumnSelectivity, int numExtraStartStopPreds, double extraStartStopSelectivity, int startStopPredCount, double statStartStopSelectivity, int numExtraQualifiers, double extraQualifierSelectivity, int numExtraNonQualifiers, double extraNonQualifierSelectivity)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCostOfConglomerateScan.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceCostOfConglomerateScan.

Report the cost of a conglomerate scan.

traceCostOfNoncoveringIndexback to summary
public void traceCostOfNoncoveringIndex(CostEstimate cost, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCostOfNoncoveringIndex.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceCostOfNoncoveringIndex.

Report the cost of using a non-covering index.

traceCostOfNScansback to summary
public void traceCostOfNScans(int tableNumber, double rowCount, CostEstimate cost)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCostOfNScans.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceCostOfNScans.

Report the cost of scanning a table a certain number of times

traceCostWithoutSortAvoidanceback to summary
public void traceCostWithoutSortAvoidance(CostEstimate currentCost)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCostWithoutSortAvoidance.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceCostWithoutSortAvoidance.

Report the cost without a sort.

traceCostWithSortAvoidanceback to summary
public void traceCostWithSortAvoidance(CostEstimate currentSortAvoidanceCost)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCostWithSortAvoidance.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceCostWithSortAvoidance.

Report the cost with sort avoidance.

traceCurrentPlanAvoidsSortback to summary
public void traceCurrentPlanAvoidsSort(CostEstimate bestCost, CostEstimate currentSortAvoidanceCost)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceCurrentPlanAvoidsSort.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceCurrentPlanAvoidsSort.

Say that the current plan avoids a sort.

traceEndQueryBlockback to summary
public void traceEndQueryBlock()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceEndQueryBlock.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceEndQueryBlock.

End tracing the optimization of a query block.

traceEstimatingCostOfConglomerateback to summary
public void traceEstimatingCostOfConglomerate(ConglomerateDescriptor cd, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceEstimatingCostOfConglomerate.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceEstimatingCostOfConglomerate.

Report the cost of using a particular conglomerate to scan a table.

traceHashKeyColumnsback to summary
public void traceHashKeyColumns(int[] hashKeyColumns)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceHashKeyColumns.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceHashKeyColumns.

Report the columns being traced

traceIllegalUserJoinOrderback to summary
public void traceIllegalUserJoinOrder()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceIllegalUserJoinOrder.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceIllegalUserJoinOrder.

Say that the user specified an impossible join order.

traceJoinOrderConsiderationback to summary
public void traceJoinOrderConsideration(int joinPosition, int[] proposedJoinOrder, JBitSet assignedTableMap)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceJoinOrderConsideration.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceJoinOrderConsideration.

Say that we're considering a join order.

traceLookingForSpecifiedIndexback to summary
public void traceLookingForSpecifiedIndex(String indexName, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceLookingForSpecifiedIndex.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceLookingForSpecifiedIndex.

Say that we're looking for an index specified by optimizer hints.

traceModifyingAccessPathsback to summary
public void traceModifyingAccessPaths(int optimizerID)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceModifyingAccessPaths.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceModifyingAccessPaths.

Say that we're modifying access paths.

traceNextAccessPathback to summary
public void traceNextAccessPath(String baseTable, int predicateCount)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceNextAccessPath.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceNextAccessPath.

Report that we are advancing to the next access path for the table.

traceNoBestPlanback to summary
public void traceNoBestPlan()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceNoBestPlan.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceNoBestPlan.

Say that we couldn't find a best plan.

traceNoMoreConglomeratesback to summary
public void traceNoMoreConglomerates(int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceNoMoreConglomerates.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceNoMoreConglomerates.

Say that we have exhausted the conglomerate possibilities for a table.

traceNonCoveringIndexCostback to summary
public void traceNonCoveringIndexCost(double cost, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceNonCoveringIndexCost.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceNonCoveringIndexCost.

Say that we're considering a non-covering index.

traceNoStartStopPositionback to summary
public void traceNoStartStopPosition()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceNoStartStopPosition.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceNoStartStopPosition.

Say that we're setting the lock mode to MODE_TABLE because there is no start/stop position.

traceOptimizingJoinNodeback to summary
public void traceOptimizingJoinNode()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceOptimizingJoinNode.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceOptimizingJoinNode.

Say that we're starting to optimize a join node

traceRememberingBestAccessPathback to summary
public void traceRememberingBestAccessPath(AccessPath accessPath, int tableNumber, int planType)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceRememberingBestAccessPath.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceRememberingBestAccessPath.

Report that we've found a best access path.

traceRememberingBestAccessPathSubstringback to summary
public void traceRememberingBestAccessPathSubstring(AccessPath ap, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceRememberingBestAccessPathSubstring.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceRememberingBestAccessPathSubstring.

Report the best access path for the table so far.

traceRememberingBestJoinOrderback to summary
public void traceRememberingBestJoinOrder(int joinPosition, int[] bestJoinOrder, int planType, CostEstimate planCost, JBitSet assignedTableMap)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceRememberingBestJoinOrder.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceRememberingBestJoinOrder.

Say that we are remembering the current plan as the best join order so far.

traceRememberingBestSortAvoidanceAccessPathSubstringback to summary
public void traceRememberingBestSortAvoidanceAccessPathSubstring(AccessPath ap, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceRememberingBestSortAvoidanceAccessPathSubstring.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceRememberingBestSortAvoidanceAccessPathSubstring.

Report the best sort-avoiding access path for this table so far.

traceRememberingBestUnknownAccessPathSubstringback to summary
public void traceRememberingBestUnknownAccessPathSubstring(AccessPath ap, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceRememberingBestUnknownAccessPathSubstring.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceRememberingBestUnknownAccessPathSubstring.

Report an optimizer failure, e.g., while optimizing an outer join

traceRememberingJoinStrategyback to summary
public void traceRememberingJoinStrategy(JoinStrategy joinStrategy, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceRememberingJoinStrategy.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceRememberingJoinStrategy.

Say that we've found a new best join strategy for the table.

traceScanningHeapWithUniqueKeyback to summary
public void traceScanningHeapWithUniqueKey()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceScanningHeapWithUniqueKey.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceScanningHeapWithUniqueKey.

Say that we're considering scanning a heap even though we have a unique key match.

traceShortCircuitingback to summary
public void traceShortCircuiting(boolean timeExceeded, Optimizable thisOpt, int joinPosition)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceShortCircuiting.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceShortCircuiting.

Say that we short-circuited a join order.

traceSingleMatchedRowCostback to summary
public void traceSingleMatchedRowCost(double cost, int tableNumber)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceSingleMatchedRowCost.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceSingleMatchedRowCost.

Report the cost of a scan which will match exactly one row.

traceSkipHashJoinNoHashKeysback to summary
public void traceSkipHashJoinNoHashKeys()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceSkipHashJoinNoHashKeys.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceSkipHashJoinNoHashKeys.

Say we won't consider a hash join because there are no hash key columns.

traceSkippingBecauseTooMuchMemoryback to summary
public void traceSkippingBecauseTooMuchMemory(int maxMemoryPerTable)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceSkippingBecauseTooMuchMemory.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceSkippingBecauseTooMuchMemory.

Say that we are skipping a plan because it consumes too much memory.

traceSkippingJoinOrderback to summary
public void traceSkippingJoinOrder(int nextOptimizable, int joinPosition, int[] proposedJoinOrder, JBitSet assignedTableMap)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceSkippingJoinOrder.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceSkippingJoinOrder.

Say that we're skipping the join order starting with the next optimizable.

traceSkipUnmaterializableHashJoinback to summary
public void traceSkipUnmaterializableHashJoin()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceSkipUnmaterializableHashJoin.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceSkipUnmaterializableHashJoin.

Say that we won't consider a hash join because the result can't be materialized

traceSortCostback to summary
public void traceSortCost(CostEstimate sortCost, CostEstimate currentCost)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceSortCost.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceSortCost.

Report the sort cost.

traceSortNeededForOrderingback to summary
public void traceSortNeededForOrdering(int planType, RequiredRowOrdering requiredRowOrdering)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceSortNeededForOrdering.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceSortNeededForOrdering.

Report that this plan needs a sort

traceStartQueryBlockback to summary
public void traceStartQueryBlock(long timeOptimizationStarted, int optimizerID, OptimizableList optimizableList)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceStartQueryBlock.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceStartQueryBlock.

Start optimizer tracing for a query block.

traceStartStatementback to summary
public void traceStartStatement(String statementText)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceStartStatement.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceStartStatement.

Start the start of tracing a statement.

traceTimeoutback to summary
public void traceTimeout(long currentTime, CostEstimate bestCost)

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceTimeout.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceTimeout.

Say that the optimizer ran out of time.

traceUserJoinOrderOptimizedback to summary
public void traceUserJoinOrderOptimized()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceUserJoinOrderOptimized.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceUserJoinOrderOptimized.

Say that we have optimized the user-specified join order.

traceVacuousback to summary
public void traceVacuous()

Implements org.apache.derby.iapi.sql.compile.OptTrace.traceVacuous.

Doc from org.apache.derby.iapi.sql.compile.OptTrace.traceVacuous.

Say that there's nothing to optimizer.