Class LockTableNode
- java.lang.Object
-
- org.apache.derby.impl.sql.compile.QueryTreeNode
-
- org.apache.derby.impl.sql.compile.StatementNode
-
- org.apache.derby.impl.sql.compile.MiscellaneousStatementNode
-
- org.apache.derby.impl.sql.compile.LockTableNode
-
- All Implemented Interfaces:
Visitable
class LockTableNode extends MiscellaneousStatementNode
A LockTableNode is the root of a QueryTree that represents a LOCK TABLE command: LOCK TABLEIN SHARE/EXCLUSIVE MODE
-
-
Field Summary
Fields Modifier and Type Field Description private longconglomerateNumberprivate booleanexclusiveModeprivate TableDescriptorlockTableDescriptorprivate TableNametableName-
Fields inherited from class org.apache.derby.impl.sql.compile.StatementNode
EMPTY_TD_LIST, NEED_CURSOR_ACTIVATION, NEED_DDL_ACTIVATION, NEED_NOTHING_ACTIVATION, NEED_PARAM_ACTIVATION, NEED_ROW_ACTIVATION
-
Fields inherited from class org.apache.derby.impl.sql.compile.QueryTreeNode
AUTOINCREMENT_CREATE_MODIFY, AUTOINCREMENT_CYCLE, AUTOINCREMENT_INC_INDEX, AUTOINCREMENT_IS_AUTOINCREMENT_INDEX, AUTOINCREMENT_START_INDEX
-
-
Constructor Summary
Constructors Constructor Description LockTableNode(TableName tableName, boolean exclusiveMode, ContextManager cm)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) voidacceptChildren(Visitor v)Accept a visitor on all child nodes.voidbindStatement()Bind this LockTableNode.ConstantActionmakeConstantAction()Create the Constant information that will drive the guts of Execution.booleanreferencesSessionSchema()Return true if the node references SESSION schema tables (temporary or permanent)(package private) java.lang.StringstatementToString()java.lang.StringtoString()Convert this object to a String.-
Methods inherited from class org.apache.derby.impl.sql.compile.MiscellaneousStatementNode
activationKind, generate, needsSavepoint
-
Methods inherited from class org.apache.derby.impl.sql.compile.StatementNode
executeSchemaName, executeStatementName, generate, getCursorInfo, getSPSName, isAtomic, lockTableForCompilation, makeResultDescription, optimizeStatement, updateIndexStatisticsFor
-
Methods inherited from class org.apache.derby.impl.sql.compile.QueryTreeNode
accept, addTag, addUDTUsagePriv, addUDTUsagePriv, bindOffsetFetch, bindRowMultiSet, bindUserCatalogType, bindUserType, checkReliability, checkReliability, convertDefaultNode, copyTagsFrom, createTypeDependency, debugFlush, debugPrint, disablePrivilegeCollection, formatNodeString, generateAuthorizeCheck, getBeginOffset, getClassFactory, getCompilerContext, getContext, getContextManager, getDataDictionary, getDependencyManager, getEndOffset, getExecutionFactory, getGenericConstantActionFactory, getIntProperty, getLanguageConnectionContext, getLongProperty, getNullNode, getOffsetOrderedNodes, getOptimizerFactory, getOptimizerTracer, getParameterTypes, getSchemaDescriptor, getSchemaDescriptor, getStatementType, getTableDescriptor, getTypeCompiler, getUDTDesc, isPrivilegeCollectionRequired, isSessionSchema, isSessionSchema, makeTableName, makeTableName, nodeHeader, optimizerTracingIsOn, orReliability, parseSearchCondition, parseStatement, printLabel, printSubNodes, resolveTableToSynonym, setBeginOffset, setEndOffset, setRefActionInfo, stackPrint, taggedWith, treePrint, treePrint, verifyClassExist
-
-
-
-
Field Detail
-
tableName
private TableName tableName
-
exclusiveMode
private boolean exclusiveMode
-
conglomerateNumber
private long conglomerateNumber
-
lockTableDescriptor
private TableDescriptor lockTableDescriptor
-
-
Constructor Detail
-
LockTableNode
LockTableNode(TableName tableName, boolean exclusiveMode, ContextManager cm)
- Parameters:
tableName- The table to lockexclusiveMode- Whether or not to get an exclusive lock.cm- Context manager
-
-
Method Detail
-
toString
public java.lang.String toString()
Convert this object to a String. See comments in QueryTreeNode.java for how this should be done for tree printing.- Overrides:
toStringin classStatementNode- Returns:
- This object as a String
-
statementToString
java.lang.String statementToString()
- Specified by:
statementToStringin classStatementNode
-
bindStatement
public void bindStatement() throws StandardExceptionBind this LockTableNode. This means looking up the table, verifying it exists and getting the heap conglomerate number.- Overrides:
bindStatementin classStatementNode- Throws:
StandardException- Thrown on error
-
referencesSessionSchema
public boolean referencesSessionSchema() throws StandardExceptionReturn true if the node references SESSION schema tables (temporary or permanent)- Overrides:
referencesSessionSchemain classQueryTreeNode- Returns:
- true if references SESSION schema tables, else false
- Throws:
StandardException- Thrown on error
-
makeConstantAction
public ConstantAction makeConstantAction() throws StandardException
Create the Constant information that will drive the guts of Execution.- Overrides:
makeConstantActionin classQueryTreeNode- Throws:
StandardException- Thrown on failure
-
acceptChildren
void acceptChildren(Visitor v) throws StandardException
Description copied from class:QueryTreeNodeAccept a visitor on all child nodes. All sub-classes that add fields that should be visited, should override this method and callaccept(v)on all visitable fields, as well assuper.acceptChildren(v)to make sure all visitable fields defined by the super-class are accepted too.- Overrides:
acceptChildrenin classQueryTreeNode- Parameters:
v- the visitor- Throws:
StandardException- on errors raised by the visitor
-
-