|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.derby.impl.store.access.conglomerate.GenericController
org.apache.derby.impl.store.access.conglomerate.GenericCostController
public abstract class GenericCostController
A Generic class which implements the basic functionality needed for a cost controller.
Field Summary |
---|
Fields inherited from class org.apache.derby.impl.store.access.conglomerate.GenericController |
---|
open_conglom |
Fields inherited from interface org.apache.derby.iapi.store.access.StoreCostController |
---|
BASE_CACHED_ROW_FETCH_COST, BASE_GROUPSCAN_ROW_COST, BASE_HASHSCAN_ROW_FETCH_COST, BASE_NONGROUPSCAN_ROW_FETCH_COST, BASE_ROW_PER_BYTECOST, BASE_UNCACHED_ROW_FETCH_COST, STORECOST_CLUSTERED, STORECOST_SCAN_NORMAL, STORECOST_SCAN_SET |
Constructor Summary | |
---|---|
GenericCostController()
|
Method Summary | |
---|---|
double |
getFetchFromFullKeyCost(FormatableBitSet validColumns,
int access_type)
Return the cost of exact key lookup. |
Methods inherited from class org.apache.derby.impl.store.access.conglomerate.GenericController |
---|
checkConsistency, close, debugConglomerate, getEstimatedRowCount, getInternalTablePropertySet, getOpenConglom, getRowPositionFromRowLocation, getSpaceInfo, getTableProperties, init, isKeyed, isTableLocked, newRowLocationTemplate, queueDeletePostCommitWork, setEstimatedRowCount |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.apache.derby.iapi.store.access.StoreCostController |
---|
close, getFetchFromRowLocationCost, getScanCost, newRowLocationTemplate |
Methods inherited from interface org.apache.derby.iapi.store.access.RowCountable |
---|
getEstimatedRowCount, setEstimatedRowCount |
Constructor Detail |
---|
public GenericCostController()
Method Detail |
---|
public double getFetchFromFullKeyCost(FormatableBitSet validColumns, int access_type) throws StandardException
Return the estimated cost of calling ScanController.fetch() on the current conglomerate, with start and stop positions set such that an exact match is expected.
This call returns the cost of a fetchNext() performed on a scan which has been positioned with a start position which specifies exact match on all keys in the row.
Example:
In the case of a btree this call can be used to determine the cost of doing an exact probe into btree, giving all key columns. This cost can be used if the client knows it will be doing an exact key probe but does not have the key's at optimize time to use to make a call to getScanCost()
getFetchFromFullKeyCost
in interface StoreCostController
validColumns
- A description of which columns to return from
row on the page into "templateRow." templateRow,
and validColumns work together to
describe the row to be returned by the fetch -
see RowUtil for description of how these three
parameters work together to describe a fetched
"row".access_type
- Describe the type of access the query will be
performing to the ScanController.
STORECOST_CLUSTERED - The location of one scan
is likely clustered "close" to the previous
scan. For instance if the query plan were
to used repeated "reopenScan()'s" to probe
for the next key in an index, then this flag
should be be specified. If this flag is not
set then each scan will be costed independant
of any other predicted scan access.
StandardException
- Standard exception policy.RowUtil
|
Built on Thu 2012-03-29 21:53:33+0000, from revision ??? | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |