|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface FarragoMedLocalDataServer
FarragoMedLocalDataServer represents a FarragoMedDataServer
instance
originating from a FarragoMedDataWrapper
managing local data. It
defines extra methods not relevant in the context of foreign data.
Field Summary |
---|
Fields inherited from interface net.sf.farrago.namespace.FarragoMedDataServer |
---|
PROP_SERVER_NAME, PROP_SERVER_TYPE, PROP_SERVER_VERSION |
Method Summary | |
---|---|
FarragoMedLocalIndexStats |
computeIndexStats(FemLocalIndex index,
long rootPageId,
boolean estimate,
FennelTxnContext txnContext)
Verifies an index and returns its page count. |
RelNode |
constructIndexBuildPlan(RelOptTable table,
FemLocalIndex index,
RelOptCluster cluster)
Creates a plan for loading existing rows of a table into an index. |
long |
createIndex(FemLocalIndex index,
FennelTxnContext txnContext)
Creates an index. |
void |
dropIndex(FemLocalIndex index,
long rootPageId,
boolean truncate,
FennelTxnContext txnContext)
Drops or truncates an index. |
void |
setFennelDbHandle(FennelDbHandle fennelDbHandle)
Sets the Fennel database handle to use for accessing local storage. |
boolean |
supportsAlterTableAddColumn()
Checks whether ALTER TABLE ADD COLUMN is implemented for tables stored by this local data server. |
void |
validateTableDefinition(FemLocalTable table,
FemLocalIndex generatedPrimaryKeyIndex)
Validates the definition of a table being created. |
void |
validateTableDefinition(FemLocalTable table,
FemLocalIndex generatedPrimaryKeyIndex,
boolean creation)
Validates the definition of a table being created. |
void |
versionIndexRoot(Long oldRoot,
Long newRoot,
FennelTxnContext txnContext)
Versions the root page of an index |
Methods inherited from interface net.sf.farrago.namespace.FarragoMedDataServer |
---|
getNameDirectory, getRuntimeSupport, newColumnSet, registerRelMetadataProviders, registerRules, releaseResources, setLoopbackDataSource |
Methods inherited from interface org.eigenbase.util.ClosableAllocation |
---|
closeAllocation |
Method Detail |
---|
void setFennelDbHandle(FennelDbHandle fennelDbHandle)
fennelDbHandle
- the handle to usevoid validateTableDefinition(FemLocalTable table, FemLocalIndex generatedPrimaryKeyIndex) throws SQLException
table
- definition of the table being createdgeneratedPrimaryKeyIndex
- if non-null, a reference to an index
generated by the system to enforce the primary key
SQLException
void validateTableDefinition(FemLocalTable table, FemLocalIndex generatedPrimaryKeyIndex, boolean creation) throws SQLException
table
- definition of the table being createdgeneratedPrimaryKeyIndex
- if non-null, a reference to an index
generated by the system to enforce the primary keycreation
- true if the table being validated is being newly created
SQLException
long createIndex(FemLocalIndex index, FennelTxnContext txnContext) throws SQLException
index
- definition of the index to createtxnContext
- Fennel txn context
SQLException
void dropIndex(FemLocalIndex index, long rootPageId, boolean truncate, FennelTxnContext txnContext) throws SQLException
index
- definition of the index to droprootPageId
- root PageId of indextruncate
- if true, only truncate storage; if false, drop storage
entirelytxnContext
- Fennel txn context
SQLException
FarragoMedLocalIndexStats computeIndexStats(FemLocalIndex index, long rootPageId, boolean estimate, FennelTxnContext txnContext) throws SQLException
index
- definition of the index to verifyrootPageId
- root PageId of indexestimate
- whether to estimate statistics for a quicker result (and
at the cost of no unique key count)txnContext
- Fennel txn context
SQLException
RelNode constructIndexBuildPlan(RelOptTable table, FemLocalIndex index, RelOptCluster cluster)
FarragoIndexBuilderRel
, and this plugin will supply
a rule which transforms that into a corresponding physical rel for
writing to the index. Where possible, the returned plan should consist of
logical rels, increasing optimization potential.
table
- the optimizer representation for the indexed tableindex
- the index to be loadedcluster
- container for newly created relational expressions
void versionIndexRoot(Long oldRoot, Long newRoot, FennelTxnContext txnContext) throws SQLException
oldRoot
- original root pagenewRoot
- new versioned, root pagetxnContext
- Fennel txn context
SQLException
boolean supportsAlterTableAddColumn()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |