| Modifier and Type | Class and Description |
|---|---|
class |
QueryMetadataException
This exception is thrown when an error occurs while retrieving metadata
from a query component metadata facade.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
DQP.cancelRequest(long requestID) |
ResultsFuture<?> |
DQP.closeLobChunkStream(int lobRequestId,
long requestId,
String streamId) |
ResultsFuture<?> |
DQP.closeRequest(long requestID) |
ResultsFuture<ResultsMessage> |
DQP.executeRequest(long reqID,
RequestMessage message) |
MetadataResult |
DQP.getMetadata(long requestID) |
MetadataResult |
DQP.getMetadata(long requestID,
String preparedSql,
boolean allowDoubleQuotedVariable) |
ResultsFuture<LobChunk> |
DQP.requestNextLobChunk(int lobRequestId,
long requestId,
String streamId) |
| Modifier and Type | Method and Description |
|---|---|
void |
ILogon.assertIdentity(SessionToken sessionId) |
ResultsFuture<?> |
ILogon.logoff()
Log off the specified session.
|
LogonResult |
ILogon.logon(Properties connectionProperties) |
ResultsFuture<?> |
ILogon.ping()
Ping the server to see if the client-server connection is alive.
|
ResultsFuture<?> |
ILogon.ping(Collection<String> sessions)
Deprecated.
|
| Modifier and Type | Class and Description |
|---|---|
class |
BlockedException
This exception is thrown if the buffer manager blocks waiting on input during
processing.
|
| Modifier and Type | Method and Description |
|---|---|
void |
TupleBuffer.addTuple(List<?> tuple) |
void |
TupleBuffer.addTupleBatch(TupleBatch batch,
boolean save)
Adds the given batch preserving row offsets.
|
void |
TupleBuffer.close() |
Long |
BatchManager.createManagedBatch(List<? extends List<?>> batch,
Long previous,
boolean removeOld) |
TupleBuffer |
BufferManager.createTupleBuffer(List elements,
String groupName,
BufferManager.TupleSourceType tupleSourceType) |
void |
LobManager.detachLob(Streamable<?> lob,
FileStore store,
byte[] bytes) |
protected List<?> |
TupleBuffer.TupleBufferTupleSource.finalRow() |
protected abstract List<?> |
AbstractTupleSource.finalRow() |
List |
STree.find(List n) |
CacheEntry |
Cache.get(T lock,
Long oid,
WeakReference<? extends Serializer<?>> ref)
Get method, must be called using the object obtained in the
lockForLoad method
|
TupleBatch |
TupleBuffer.getBatch(long row)
Get the batch containing the given row.
|
protected TupleBatch |
TupleBuffer.TupleBufferTupleSource.getBatch(long row) |
protected abstract TupleBatch |
AbstractTupleSource.getBatch(long row) |
List<List<?>> |
BatchManager.getBatch(Long batch,
boolean retain) |
protected List<?> |
AbstractTupleSource.getCurrentTuple() |
Streamable<?> |
TupleBuffer.getLobReference(String id) |
Streamable<?> |
LobManager.getLobReference(String id) |
boolean |
IndexedTupleSource.hasNext() |
boolean |
AbstractTupleSource.hasNext() |
void |
StorageManager.initialize() |
List |
STree.insert(List tuple,
STree.InsertMode mode,
int sizeHint) |
void |
IndexedTupleSource.mark()
Save the current position that can be restored with a call to
IndexedTupleSource.reset() |
void |
AbstractTupleSource.mark() |
List<?> |
TupleSource.nextTuple()
Returns the next tuple
|
List<?> |
AbstractTupleSource.nextTuple() |
List<?> |
TupleBrowser.nextTuple() |
void |
LobManager.persist() |
void |
BufferManager.persistLob(Streamable<?> lob,
FileStore store,
byte[] bytes) |
static void |
LobManager.persistLob(Streamable<?> lob,
FileStore store,
byte[] bytes,
boolean inlineLobs,
int maxMemoryBytes) |
void |
TupleBuffer.persistLobs() |
void |
STree.readValuesFrom(ObjectInputStream ois) |
List |
STree.remove(List key) |
void |
TupleBrowser.removed()
Notify the browser that the last value was deleted.
|
void |
TupleBrowser.reset(TupleSource ts) |
void |
TupleBuffer.saveBatch()
Force the persistence of any rows held in memory.
|
void |
STree.setBatchInsert(boolean batchInsert) |
void |
TupleBuffer.setRowCount(long rowCount) |
void |
TupleBuffer.truncateTo(int rowLimit) |
void |
TupleBrowser.update(List<?> tuple)
Perform an in-place update of the tuple just returned by the next method
WARNING - this must not change the key value
|
void |
LobManager.updateReferences(List<?> tuple,
LobManager.ReferenceMode mode) |
void |
STree.writeValuesTo(ObjectOutputStream oos) |
| Constructor and Description |
|---|
TupleBrowser(STree sTree,
List<Object> lowerBound,
List<Object> upperBound,
boolean direction,
boolean readOnly)
Construct a range based browser
|
| Modifier and Type | Method and Description |
|---|---|
CacheEntry |
MemoryStorageManager.get(Long lock,
Long oid,
WeakReference<? extends Serializer<?>> ref) |
CacheEntry |
BufferFrontedFileStoreCache.get(org.teiid.common.buffer.impl.PhysicalInfo info,
Long oid,
WeakReference<? extends Serializer<?>> ref) |
void |
BufferFrontedFileStoreCache.initialize() |
void |
BufferManagerImpl.initialize() |
void |
SplittableStorageManager.initialize() |
void |
FileStorageManager.initialize()
Initialize
|
void |
EncryptedStorageManager.initialize() |
void |
BufferManagerImpl.persistLob(Streamable<?> lob,
FileStore store,
byte[] bytes) |
| Modifier and Type | Class and Description |
|---|---|
class |
ComponentNotFoundException
Exception which occurs if a system component could not be found by another
component.
|
| Modifier and Type | Method and Description |
|---|---|
TempTable |
CompositeGlobalTableStore.createMatTable(String matTableName,
GroupSymbol group) |
TempMetadataID |
CompositeGlobalTableStore.getCodeTableMetadataId(String codeTableName,
String returnElementName,
String keyElementName,
String matTableName) |
TempMetadataID |
CompositeGlobalTableStore.getGlobalTempTableMetadataId(Object groupID) |
static Integer |
PgCatalogMetadataStore.FunctionMethods.regClass(CommandContext cc,
String name) |
List<?> |
CompositeGlobalTableStore.updateMatViewRow(String matTableName,
List<?> tuple,
boolean delete) |
| Modifier and Type | Method and Description |
|---|---|
SourceCapabilities |
ConnectorManager.getCapabilities() |
Table |
RuntimeMetadataImpl.getGroup(Object groupId) |
ConnectorWork |
ConnectorManager.registerRequest(AtomicRequestMessage message) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
DQPCore.cancelRequest(long requestID) |
boolean |
DQPCore.cancelRequest(String sessionId,
long executionId) |
ResultsFuture<?> |
DQPCore.closeRequest(long requestId) |
QueryProcessor |
QueryProcessorFactoryImpl.createQueryProcessor(String query,
String recursionGroup,
CommandContext commandContext,
Object... params) |
SourceCapabilities |
CachedFinder.findCapabilities(String modelName)
Find capabilities used the cache if possible, otherwise do the lookup.
|
protected void |
Request.generatePlan(boolean prepared)
state side effects:
creates the analysis record
creates the command context
sets the pre-rewrite command on the request
adds a limit clause if the row limit is specified
sets the processor plan
|
protected void |
PreparedStatementRequest.generatePlan(boolean addLimit) |
Command |
CachedResults.getCommand(String sql,
QueryMetadataInterface metadata,
ParseInfo info) |
MetadataResult |
DQPCore.getMetadata(long requestID) |
MetadataResult |
DQPCore.getMetadata(long requestID,
String preparedSql,
boolean allowDoubleQuotedVariable) |
PreparedPlan |
QueryProcessorFactoryImpl.getPreparedPlan(String query,
String recursionGroup,
CommandContext commandContext,
QueryMetadataInterface metadata) |
TupleSource |
TupleSourceCache.getSharedTupleSource(CommandContext context,
Command command,
String modelName,
RegisterRequestParameter parameterObject,
BufferManager bufferMgr,
ProcessorDataManager pdm) |
protected void |
Request.initMetadata()
if the metadata has not been supplied via setMetadata, this method will create the appropriate state
|
Object |
DataTierManagerImpl.lookupCodeValue(CommandContext context,
String codeTableName,
String returnElementName,
String keyElementName,
Object keyValue) |
List<?> |
TupleSourceCache.CopyOnReadTupleSource.nextTuple() |
List<?> |
DataTierTupleSource.nextTuple() |
protected void |
RequestWorkItem.processNew() |
void |
Request.processRequest() |
void |
PreparedStatementRequest.processRequest() |
TupleSource |
DataTierManagerImpl.registerRequest(CommandContext context,
Command command,
String modelName,
RegisterRequestParameter parameterObject) |
boolean |
RequestWorkItem.requestCancel(String reason) |
void |
RequestWorkItem.requestClose() |
protected void |
Request.resolveCommand(Command command) |
static void |
PreparedStatementRequest.resolveParameterValues(List<Reference> params,
List values,
CommandContext context,
QueryMetadataInterface metadata) |
protected boolean |
RequestWorkItem.sendResultsIfNeeded(TupleBatch batch)
Send results if they have been requested.
|
static void |
MetaDataProcessor.setColumnMetadata(Column column,
Expression symbol,
QueryMetadataInterface metadata)
Set the easily determined metadata from symbol on the given Column
|
static void |
MetaDataProcessor.updateMetadataAcrossBranches(SetQuery originalCommand,
List<Column> columns,
QueryMetadataInterface metadata) |
boolean |
DefaultAuthorizationValidator.validate(String[] originalSql,
Command command,
QueryMetadataInterface metadata,
CommandContext commandContext,
AuthorizationValidator.CommandType commandType) |
boolean |
AuthorizationValidator.validate(String[] originalSql,
Command command,
QueryMetadataInterface metadata,
CommandContext commandContext,
AuthorizationValidator.CommandType commandType)
Validates the given command.
|
protected boolean |
Request.validateAccess(String[] commandStr,
Command command,
AuthorizationValidator.CommandType type) |
static void |
Request.validateWithVisitor(AbstractValidationVisitor visitor,
QueryMetadataInterface metadata,
Command command) |
| Modifier and Type | Method and Description |
|---|---|
Object |
MultiSourceMetadataWrapper.getElementID(String elementName) |
List<?> |
MultiSourceMetadataWrapper.getElementIDsInGroupID(Object groupID) |
org.teiid.dqp.internal.process.multisource.MultiSourceMetadataWrapper.MultiSourceGroup |
MultiSourceMetadataWrapper.getMultiSourceGroup(Object groupID) |
boolean |
MultiSourceMetadataWrapper.isMultiSource(Object modelId) |
boolean |
MultiSourceMetadataWrapper.isMultiSourceElement(Object elementId) |
| Modifier and Type | Method and Description |
|---|---|
static LogonResult |
MakeGSS.authenticate(ILogon logon,
Properties props) |
| Modifier and Type | Method and Description |
|---|---|
void |
ConnectionImpl.cancelRequest(String id)
Cancel the request
|
| Modifier and Type | Method and Description |
|---|---|
static boolean |
Evaluator.evaluate(Criteria criteria) |
boolean |
Evaluator.evaluate(Criteria criteria,
List<?> tuple) |
static Object |
Evaluator.evaluate(Expression expression) |
Object |
Evaluator.evaluate(Expression expression,
List<?> tuple) |
void |
Evaluator.evaluateParameters(List<DerivedColumn> cols,
List<?> tuple,
Map<String,Object> parameters)
Evaluate the parameters and return the context item if it exists
|
protected Object |
Evaluator.evaluateProcedure(Function function,
List<?> tuple,
Object[] values) |
protected Object |
Evaluator.evaluatePushdown(Function function,
List<?> tuple,
Object[] values) |
protected ValueIterator |
Evaluator.evaluateSubquery(SubqueryContainer<?> container,
List<?> tuple) |
Boolean |
Evaluator.evaluateTVL(Criteria criteria,
List<?> tuple) |
protected Object |
Evaluator.internalEvaluate(Expression expression,
List<?> tuple) |
static JsonType |
Evaluator.jsonArray(CommandContext context,
Function f,
Object[] vals,
JSONFunctionMethods.JSONBuilder builder,
Evaluator eval,
List<?> tuple) |
| Modifier and Type | Method and Description |
|---|---|
static JsonType |
JSONFunctionMethods.jsonArray(CommandContext context,
Object... vals) |
static int |
FunctionMethods.mvstatus(CommandContext context,
String schemaName,
String viewName) |
| Modifier and Type | Method and Description |
|---|---|
void |
AggregateFunction.addInput(List<?> tuple,
CommandContext commandContext) |
void |
NthValue.addInput(List<?> tuple,
CommandContext commandContext,
long startFrame,
long endFrame,
TupleBuffer frame) |
void |
RankingFunction.addInputDirect(List<?> tuple,
CommandContext commandContext) |
void |
Count.addInputDirect(List<?> tuple,
CommandContext commandContext) |
void |
UserDefined.addInputDirect(List<?> tuple,
CommandContext commandContext) |
void |
SingleArgumentAggregateFunction.addInputDirect(List<?> tuple,
CommandContext commandContext) |
void |
NthValue.addInputDirect(List<?> tuple,
CommandContext commandContext) |
void |
RankingFunctionBig.addInputDirect(List<?> tuple,
CommandContext commandContext) |
void |
LeadLagValue.addInputDirect(List<?> tuple,
CommandContext commandContext) |
abstract void |
AggregateFunction.addInputDirect(List<?> tuple,
CommandContext commandContext)
Called for the element value in every row of a group.
|
void |
CountBig.addInputDirect(List<?> tuple,
CommandContext commandContext) |
void |
StringAgg.addInputDirect(List<?> tuple,
CommandContext commandContext) |
void |
Max.addInputDirect(Object value,
List<?> tuple,
CommandContext commandContext) |
void |
Avg.addInputDirect(Object input,
List<?> tuple,
CommandContext commandContext) |
void |
Min.addInputDirect(Object value,
List<?> tuple,
CommandContext commandContext) |
void |
Ntile.addInputDirect(Object input,
List<?> tuple,
CommandContext commandContext) |
void |
JSONArrayAgg.addInputDirect(Object input,
List<?> tuple,
CommandContext commandContext) |
void |
XMLAgg.addInputDirect(Object input,
List<?> tuple,
CommandContext commandContext) |
abstract void |
SingleArgumentAggregateFunction.addInputDirect(Object input,
List<?> tuple,
CommandContext commandContext) |
void |
ArrayAgg.addInputDirect(Object input,
List<?> tuple,
CommandContext commandContext) |
void |
Sum.addInputDirect(Object input,
List<?> tuple,
CommandContext commandContext) |
void |
ConstantFunction.addInputDirect(Object input,
List<?> tuple,
CommandContext commandContext) |
void |
TextAgg.addInputDirect(Object input,
List<?> tuple,
CommandContext commandContext) |
void |
FirstLastValue.addInputDirect(Object input,
List<?> tuple,
CommandContext commandContext) |
void |
StatsFunction.addInputDirect(Object input,
List<?> tuple,
CommandContext commandContext) |
Object |
RankingFunction.getResult(CommandContext commandContext) |
Object |
Avg.getResult(CommandContext commandContext) |
Object |
JSONArrayAgg.getResult(CommandContext commandContext) |
Object |
XMLAgg.getResult(CommandContext commandContext) |
Object |
UserDefined.getResult(CommandContext commandContext) |
Object |
ArrayAgg.getResult(CommandContext commandContext) |
Object |
Sum.getResult(CommandContext commandContext) |
Object |
NthValue.getResult(CommandContext commandContext) |
Object |
RankingFunctionBig.getResult(CommandContext commandContext) |
Object |
ConstantFunction.getResult(CommandContext commandContext) |
Object |
LeadLagValue.getResult(CommandContext commandContext) |
abstract Object |
AggregateFunction.getResult(CommandContext commandContext)
Called after all values have been processed to get the result.
|
Object |
StatsFunction.getResult(CommandContext commandContext) |
| Modifier and Type | Method and Description |
|---|---|
Object |
XMLHelper.evaluateXMLQuery(List<?> tuple,
XMLQuery xmlQuery,
boolean exists,
Map<String,Object> parameters,
CommandContext context) |
static SQLXML |
XMLSystemFunctions.jsonToXml(CommandContext context,
String rootName,
Blob json) |
static SQLXML |
XMLSystemFunctions.jsonToXml(CommandContext context,
String rootName,
Blob json,
boolean stream) |
static SQLXML |
XMLSystemFunctions.jsonToXml(CommandContext context,
String rootName,
Clob json) |
static SQLXML |
XMLSystemFunctions.jsonToXml(CommandContext context,
String rootName,
Clob json,
boolean stream) |
RelationalNode |
XMLHelper.newXMLTableNode(int id,
XMLTable xt,
ArrayList<XMLTable.XMLColumn> filteredColumns) |
static SQLXMLImpl |
XMLSystemFunctions.saveToBufferManager(BufferManager bufferMgr,
XMLTranslator translator,
CommandContext context)
This method saves the given XML object to the buffer manager's disk process
Documents less than the maxMemorySize will be held directly in memory
|
static XMLType |
XMLSystemFunctions.xmlElement(CommandContext context,
String name,
Evaluator.NameValuePair<String>[] namespaces,
Evaluator.NameValuePair<?>[] attributes,
List<?> contents)
Basic support for xmlelement.
|
static XMLType |
XMLSystemFunctions.xmlForest(CommandContext context,
Evaluator.NameValuePair[] namespaces,
Evaluator.NameValuePair[] values) |
| Modifier and Type | Method and Description |
|---|---|
Object |
BasicQueryMetadataWrapper.addToMetadataCache(Object metadataID,
String key,
Object value) |
Object |
BasicQueryMetadata.addToMetadataCache(Object metadataID,
String key,
Object value) |
Object |
QueryMetadataInterface.addToMetadataCache(Object metadataID,
String key,
Object value) |
Object |
TempMetadataAdapter.addToMetadataCache(Object metadataID,
String key,
Object value) |
boolean |
BasicQueryMetadataWrapper.elementSupports(Object elementID,
int elementConstant) |
boolean |
BasicQueryMetadata.elementSupports(Object elementID,
int elementConstant) |
boolean |
QueryMetadataInterface.elementSupports(Object elementID,
int elementConstant)
Determine whether the specified element supports some feature.
|
boolean |
TempMetadataAdapter.elementSupports(Object elementID,
int supportConstant) |
boolean |
TransformationMetadata.elementSupports(Object elementID,
int elementConstant) |
SourceCapabilities |
TempCapabilitiesFinder.findCapabilities(String modelName) |
Collection |
BasicQueryMetadataWrapper.getAccessPatternsInGroup(Object groupID) |
Collection |
BasicQueryMetadata.getAccessPatternsInGroup(Object groupID) |
Collection |
QueryMetadataInterface.getAccessPatternsInGroup(Object groupID)
Get the access patterns for the specified group
|
Collection |
TempMetadataAdapter.getAccessPatternsInGroup(Object groupID) |
Collection<KeyRecord> |
TransformationMetadata.getAccessPatternsInGroup(Object groupID) |
byte[] |
BasicQueryMetadataWrapper.getBinaryVDBResource(String resourcePath) |
byte[] |
BasicQueryMetadata.getBinaryVDBResource(String resourcePath) |
byte[] |
QueryMetadataInterface.getBinaryVDBResource(String resourcePath)
Gets the contents of a VDB resource in binary form.
|
byte[] |
TransformationMetadata.getBinaryVDBResource(String resourcePath) |
float |
BasicQueryMetadataWrapper.getCardinality(Object groupID) |
float |
BasicQueryMetadata.getCardinality(Object groupID) |
float |
QueryMetadataInterface.getCardinality(Object groupID)
Return the cardinality for this group
|
float |
TempMetadataAdapter.getCardinality(Object groupID) |
float |
TransformationMetadata.getCardinality(Object groupID) |
String |
BasicQueryMetadataWrapper.getCharacterVDBResource(String resourcePath) |
String |
BasicQueryMetadata.getCharacterVDBResource(String resourcePath) |
String |
QueryMetadataInterface.getCharacterVDBResource(String resourcePath)
Gets the contents of a VDB resource as a String.
|
String |
TransformationMetadata.getCharacterVDBResource(String resourcePath) |
String |
BasicQueryMetadataWrapper.getDefaultValue(Object elementID) |
String |
BasicQueryMetadata.getDefaultValue(Object elementID) |
String |
QueryMetadataInterface.getDefaultValue(Object elementID)
Get the element's default value for an element symbol
|
String |
TempMetadataAdapter.getDefaultValue(Object elementID) |
String |
TransformationMetadata.getDefaultValue(Object elementID) |
String |
BasicQueryMetadataWrapper.getDeletePlan(Object groupID) |
String |
BasicQueryMetadata.getDeletePlan(Object groupID)
Get procedure defining the delete plan for this group.
|
String |
QueryMetadataInterface.getDeletePlan(Object groupID)
Get procedure defining the delete plan for this group.
|
String |
TransformationMetadata.getDeletePlan(Object groupID) |
float |
BasicQueryMetadataWrapper.getDistinctValues(Object elementID) |
float |
BasicQueryMetadata.getDistinctValues(Object elementID) |
float |
QueryMetadataInterface.getDistinctValues(Object elementID)
Get the number of distinct values for this column.
|
float |
TempMetadataAdapter.getDistinctValues(Object elementID) |
float |
TransformationMetadata.getDistinctValues(Object elementID) |
Object |
BasicQueryMetadataWrapper.getElementID(String elementName) |
Object |
BasicQueryMetadata.getElementID(String elementName) |
Object |
QueryMetadataInterface.getElementID(String elementName)
Get the metadata-implementation identifier object for the given element name.
|
Object |
TempMetadataAdapter.getElementID(String elementName)
Check metadata first, then check temp groups if not found
|
Column |
TransformationMetadata.getElementID(String elementName) |
List |
BasicQueryMetadataWrapper.getElementIDsInAccessPattern(Object accessPattern) |
List |
BasicQueryMetadata.getElementIDsInAccessPattern(Object accessPattern) |
List |
QueryMetadataInterface.getElementIDsInAccessPattern(Object accessPattern)
Get the elements in the access pattern
|
List |
TempMetadataAdapter.getElementIDsInAccessPattern(Object accessPattern) |
List<Column> |
TransformationMetadata.getElementIDsInAccessPattern(Object accessPattern) |
List |
BasicQueryMetadataWrapper.getElementIDsInGroupID(Object groupID) |
List |
BasicQueryMetadata.getElementIDsInGroupID(Object groupID) |
List |
QueryMetadataInterface.getElementIDsInGroupID(Object groupID)
Get list of metadata element IDs for a group ID
|
List |
TempMetadataAdapter.getElementIDsInGroupID(Object groupID) |
List<Column> |
TransformationMetadata.getElementIDsInGroupID(Object groupID) |
List |
BasicQueryMetadataWrapper.getElementIDsInIndex(Object index) |
List |
BasicQueryMetadata.getElementIDsInIndex(Object index) |
List |
QueryMetadataInterface.getElementIDsInIndex(Object index)
Get the elements in the index
|
List |
TempMetadataAdapter.getElementIDsInIndex(Object index) |
List<Column> |
TransformationMetadata.getElementIDsInIndex(Object index) |
List |
BasicQueryMetadataWrapper.getElementIDsInKey(Object key) |
List |
BasicQueryMetadata.getElementIDsInKey(Object key) |
List |
QueryMetadataInterface.getElementIDsInKey(Object key)
Get the elements in the key
|
List |
TempMetadataAdapter.getElementIDsInKey(Object keyID) |
List<Column> |
TransformationMetadata.getElementIDsInKey(Object key) |
int |
BasicQueryMetadataWrapper.getElementLength(Object elementID) |
int |
BasicQueryMetadata.getElementLength(Object elementID) |
int |
QueryMetadataInterface.getElementLength(Object elementID)
Get the element length for a given element ID.
|
int |
TempMetadataAdapter.getElementLength(Object elementID) |
int |
TransformationMetadata.getElementLength(Object elementID) |
String |
BasicQueryMetadataWrapper.getElementRuntimeTypeName(Object elementID) |
String |
BasicQueryMetadata.getElementRuntimeTypeName(Object elementID) |
String |
QueryMetadataInterface.getElementRuntimeTypeName(Object elementID)
Get the element type name for an element symbol.
|
String |
TempMetadataAdapter.getElementRuntimeTypeName(Object elementID) |
String |
TransformationMetadata.getElementRuntimeTypeName(Object elementID) |
Properties |
BasicQueryMetadataWrapper.getExtensionProperties(Object metadataID) |
Properties |
BasicQueryMetadata.getExtensionProperties(Object metadataID) |
Properties |
QueryMetadataInterface.getExtensionProperties(Object metadataID)
Get all extension properties defined on this metadata object
|
Properties |
TempMetadataAdapter.getExtensionProperties(Object metadataID) |
Properties |
TransformationMetadata.getExtensionProperties(Object metadataID) |
Collection |
BasicQueryMetadataWrapper.getForeignKeysInGroup(Object groupID) |
Collection |
BasicQueryMetadata.getForeignKeysInGroup(Object groupID) |
Collection |
QueryMetadataInterface.getForeignKeysInGroup(Object groupID)
Get the foreign keys for the specified group
|
Collection |
TempMetadataAdapter.getForeignKeysInGroup(Object groupID) |
Collection<ForeignKey> |
TransformationMetadata.getForeignKeysInGroup(Object groupID) |
String |
BasicQueryMetadataWrapper.getFormat(Object elementID) |
String |
BasicQueryMetadata.getFormat(Object elementID) |
String |
QueryMetadataInterface.getFormat(Object elementID)
Get the element's format
|
String |
TransformationMetadata.getFormat(Object elementID) |
Object |
BasicQueryMetadataWrapper.getFromMetadataCache(Object metadataID,
String key) |
Object |
BasicQueryMetadata.getFromMetadataCache(Object metadataID,
String key) |
Object |
QueryMetadataInterface.getFromMetadataCache(Object metadataID,
String key) |
Object |
TempMetadataAdapter.getFromMetadataCache(Object metadataID,
String key) |
Object |
TransformationMetadata.getFromMetadataCache(Object metadataID,
String key) |
String |
BasicQueryMetadataWrapper.getFullName(Object metadataID) |
String |
BasicQueryMetadata.getFullName(Object metadataID) |
String |
QueryMetadataInterface.getFullName(Object metadataID)
Get the fully qualified (unique) name of the metadata identifier specified.
|
String |
TempMetadataAdapter.getFullName(Object metadataID) |
String |
TransformationMetadata.getFullName(Object metadataID) |
Object |
BasicQueryMetadataWrapper.getGroupID(String groupName) |
Object |
BasicQueryMetadata.getGroupID(String groupName) |
Object |
QueryMetadataInterface.getGroupID(String groupName)
Get the metadata-implementation identifier object for the given group name.
|
Object |
TempMetadataAdapter.getGroupID(String groupName)
Check metadata first, then check temp groups if not found
|
Table |
TransformationMetadata.getGroupID(String groupName) |
Object |
BasicQueryMetadataWrapper.getGroupIDForElementID(Object elementID) |
Object |
BasicQueryMetadata.getGroupIDForElementID(Object elementID) |
Object |
QueryMetadataInterface.getGroupIDForElementID(Object elementID)
Get containg group ID given element ID
|
Object |
TempMetadataAdapter.getGroupIDForElementID(Object elementID) |
Object |
TransformationMetadata.getGroupIDForElementID(Object elementID) |
Collection |
BasicQueryMetadataWrapper.getGroupsForPartialName(String partialGroupName) |
Collection |
BasicQueryMetadata.getGroupsForPartialName(String partialGroupName) |
Collection |
QueryMetadataInterface.getGroupsForPartialName(String partialGroupName)
Get a collection of group names that match the partially qualified group name.
|
Collection |
TempMetadataAdapter.getGroupsForPartialName(String partialGroupName) |
Collection<String> |
TransformationMetadata.getGroupsForPartialName(String partialGroupName) |
Collection |
BasicQueryMetadataWrapper.getIndexesInGroup(Object groupID) |
Collection |
BasicQueryMetadata.getIndexesInGroup(Object groupID) |
Collection |
QueryMetadataInterface.getIndexesInGroup(Object groupID)
Get the indexes for the specified group
|
Collection |
TempMetadataAdapter.getIndexesInGroup(Object groupID) |
Collection<KeyRecord> |
TransformationMetadata.getIndexesInGroup(Object groupID) |
String |
BasicQueryMetadataWrapper.getInsertPlan(Object groupID) |
String |
BasicQueryMetadata.getInsertPlan(Object groupID)
Get procedure defining the insert plan for this group.
|
String |
QueryMetadataInterface.getInsertPlan(Object groupID)
Get procedure defining the insert plan for this group.
|
String |
TransformationMetadata.getInsertPlan(Object groupID) |
Object |
BasicQueryMetadataWrapper.getMaterialization(Object groupID) |
Object |
BasicQueryMetadata.getMaterialization(Object groupID) |
Object |
QueryMetadataInterface.getMaterialization(Object groupID)
Accquire the physical group ID (the Materialization) for the given virtual
group ID, or
null if the given virtual group has no Materialization. |
Object |
TempMetadataAdapter.getMaterialization(Object groupID) |
Object |
TransformationMetadata.getMaterialization(Object groupID) |
Object |
BasicQueryMetadataWrapper.getMaterializationStage(Object groupID) |
Object |
BasicQueryMetadata.getMaterializationStage(Object groupID) |
Object |
QueryMetadataInterface.getMaterializationStage(Object groupID)
Accquire the physical group ID that is used for the staging area for loading
(the Materialization) for the given virtual group ID, or
null
if the given virtual group has no Materialization. |
Object |
TempMetadataAdapter.getMaterializationStage(Object groupID) |
Object |
TransformationMetadata.getMaterializationStage(Object groupID) |
Object |
BasicQueryMetadataWrapper.getMaximumValue(Object elementID) |
Object |
BasicQueryMetadata.getMaximumValue(Object elementID) |
Object |
QueryMetadataInterface.getMaximumValue(Object elementID)
Get the element's default value for an element symbol
|
Object |
TempMetadataAdapter.getMaximumValue(Object elementID) |
Object |
TransformationMetadata.getMaximumValue(Object elementID) |
int |
BasicQueryMetadataWrapper.getMaxSetSize(Object modelID) |
int |
BasicQueryMetadata.getMaxSetSize(Object modelID) |
int |
QueryMetadataInterface.getMaxSetSize(Object modelID)
Get the max set size for the specified model.
|
int |
TransformationMetadata.getMaxSetSize(Object modelID) |
Object |
BasicQueryMetadataWrapper.getMinimumValue(Object elementID) |
Object |
BasicQueryMetadata.getMinimumValue(Object elementID) |
Object |
QueryMetadataInterface.getMinimumValue(Object elementID)
Get the element's minimum value for an element symbol
|
Object |
TempMetadataAdapter.getMinimumValue(Object elementID) |
Object |
TransformationMetadata.getMinimumValue(Object elementID) |
Object |
BasicQueryMetadataWrapper.getModelID(Object groupOrElementID) |
Object |
BasicQueryMetadata.getModelID(Object groupOrElementID) |
Object |
QueryMetadataInterface.getModelID(Object groupOrElementID)
Get the metadata-implementation identifier object for the model containing the
specified group or element ID.
|
Object |
TempMetadataAdapter.getModelID(Object groupOrElementID) |
Object |
TransformationMetadata.getModelID(Object groupOrElementID) |
Object |
BasicQueryMetadataWrapper.getModelID(String modelName) |
Object |
BasicQueryMetadata.getModelID(String modelName) |
Object |
QueryMetadataInterface.getModelID(String modelName) |
Schema |
TransformationMetadata.getModelID(String modelName) |
String |
BasicQueryMetadataWrapper.getName(Object metadataID) |
String |
BasicQueryMetadata.getName(Object metadataID) |
String |
QueryMetadataInterface.getName(Object metadataID)
Get the name of the metadata identifier specified.
|
String |
TempMetadataAdapter.getName(Object metadataID) |
String |
TransformationMetadata.getName(Object metadataID) |
String |
BasicQueryMetadataWrapper.getNameInSource(Object metadataID) |
String |
BasicQueryMetadata.getNameInSource(Object metadataID) |
String |
QueryMetadataInterface.getNameInSource(Object metadataID)
Get the name in source of the metadata identifier specified.
|
String |
TransformationMetadata.getNameInSource(Object metadataID) |
String |
BasicQueryMetadataWrapper.getNativeType(Object elementID) |
String |
BasicQueryMetadata.getNativeType(Object elementID) |
String |
QueryMetadataInterface.getNativeType(Object elementID)
Get the native type of the element specified.
|
String |
TempMetadataAdapter.getNativeType(Object elementID)
Get the native type name for the element.
|
String |
TransformationMetadata.getNativeType(Object elementID) |
float |
BasicQueryMetadataWrapper.getNullValues(Object elementID) |
float |
BasicQueryMetadata.getNullValues(Object elementID) |
float |
QueryMetadataInterface.getNullValues(Object elementID)
Get the number of distinct values for this column.
|
float |
TempMetadataAdapter.getNullValues(Object elementID) |
float |
TransformationMetadata.getNullValues(Object elementID) |
int |
BasicQueryMetadataWrapper.getPosition(Object elementID) |
int |
BasicQueryMetadata.getPosition(Object elementID) |
int |
QueryMetadataInterface.getPosition(Object elementID)
Get the element's position in the group
|
int |
TempMetadataAdapter.getPosition(Object elementID) |
int |
TransformationMetadata.getPosition(Object elementID) |
int |
BasicQueryMetadataWrapper.getPrecision(Object elementID) |
int |
BasicQueryMetadata.getPrecision(Object elementID) |
int |
QueryMetadataInterface.getPrecision(Object elementID)
Get the element's precision
|
int |
TempMetadataAdapter.getPrecision(Object elementID) |
int |
TransformationMetadata.getPrecision(Object elementID) |
Object |
BasicQueryMetadataWrapper.getPrimaryKeyIDForForeignKeyID(Object foreignKeyID) |
Object |
BasicQueryMetadata.getPrimaryKeyIDForForeignKeyID(Object foreignKeyID) |
Object |
QueryMetadataInterface.getPrimaryKeyIDForForeignKeyID(Object foreignKeyID)
Get the corresponding primary key ID for the specified foreign
key ID
|
Object |
TransformationMetadata.getPrimaryKeyIDForForeignKeyID(Object foreignKeyID) |
int |
BasicQueryMetadataWrapper.getRadix(Object elementID) |
int |
BasicQueryMetadata.getRadix(Object elementID) |
int |
QueryMetadataInterface.getRadix(Object elementID)
Get the element's radix
|
int |
TempMetadataAdapter.getRadix(Object elementID) |
int |
TransformationMetadata.getRadix(Object elementID) |
int |
BasicQueryMetadataWrapper.getScale(Object elementID) |
int |
BasicQueryMetadata.getScale(Object elementID) |
int |
QueryMetadataInterface.getScale(Object elementID)
Get the element's scale
|
int |
TempMetadataAdapter.getScale(Object elementID) |
int |
TransformationMetadata.getScale(Object elementID) |
StoredProcedureInfo |
BasicQueryMetadataWrapper.getStoredProcedureInfoForProcedure(String fullyQualifiedProcedureName) |
StoredProcedureInfo |
BasicQueryMetadata.getStoredProcedureInfoForProcedure(String fullyQualifiedProcedureName) |
StoredProcedureInfo |
QueryMetadataInterface.getStoredProcedureInfoForProcedure(String fullyQualifiedProcedureName)
Get the the StoredProcedureInfo based on the fully qualified procedure name
|
StoredProcedureInfo |
TransformationMetadata.getStoredProcedureInfoForProcedure(String name) |
Collection |
BasicQueryMetadataWrapper.getUniqueKeysInGroup(Object groupID) |
Collection |
BasicQueryMetadata.getUniqueKeysInGroup(Object groupID) |
Collection |
QueryMetadataInterface.getUniqueKeysInGroup(Object groupID)
Get the unique keys for the specified group (primary and unique keys)
The primary key if present will be first in the collection
|
Collection |
TempMetadataAdapter.getUniqueKeysInGroup(Object groupID) |
Collection<KeyRecord> |
TransformationMetadata.getUniqueKeysInGroup(Object groupID) |
String |
BasicQueryMetadataWrapper.getUpdatePlan(Object groupID) |
String |
BasicQueryMetadata.getUpdatePlan(Object groupID)
Get procedure defining the update plan for this group.
|
String |
QueryMetadataInterface.getUpdatePlan(Object groupID)
Get procedure defining the update plan for this group.
|
String |
TransformationMetadata.getUpdatePlan(Object groupID) |
String[] |
BasicQueryMetadataWrapper.getVDBResourcePaths() |
String[] |
BasicQueryMetadata.getVDBResourcePaths() |
String[] |
QueryMetadataInterface.getVDBResourcePaths()
Gets the resource paths of all the resources in the VDB.
|
String[] |
TransformationMetadata.getVDBResourcePaths() |
String |
BasicQueryMetadataWrapper.getVirtualDatabaseName() |
String |
BasicQueryMetadata.getVirtualDatabaseName() |
String |
QueryMetadataInterface.getVirtualDatabaseName()
Get the currently connected virtual database name.
|
String |
TempMetadataAdapter.getVirtualDatabaseName() |
String |
TransformationMetadata.getVirtualDatabaseName() |
QueryNode |
BasicQueryMetadataWrapper.getVirtualPlan(Object groupID) |
QueryNode |
BasicQueryMetadata.getVirtualPlan(Object groupID) |
QueryNode |
QueryMetadataInterface.getVirtualPlan(Object groupID)
Get virtual plan for a group symbol.
|
QueryNode |
TempMetadataAdapter.getVirtualPlan(Object groupID) |
QueryNode |
TransformationMetadata.getVirtualPlan(Object groupID) |
List |
BasicQueryMetadata.getXMLSchemas(Object groupID) |
boolean |
BasicQueryMetadataWrapper.groupSupports(Object groupID,
int groupConstant) |
boolean |
BasicQueryMetadata.groupSupports(Object groupID,
int groupConstant) |
boolean |
QueryMetadataInterface.groupSupports(Object groupID,
int groupConstant)
Determine whether the specified group supports some feature.
|
boolean |
TempMetadataAdapter.groupSupports(Object groupID,
int groupConstant) |
boolean |
TransformationMetadata.groupSupports(Object groupID,
int groupConstant) |
boolean |
BasicQueryMetadataWrapper.hasMaterialization(Object groupID) |
boolean |
BasicQueryMetadata.hasMaterialization(Object groupID) |
boolean |
QueryMetadataInterface.hasMaterialization(Object groupID)
Determine whether given virtual group has an associated Materialization.
|
boolean |
TempMetadataAdapter.hasMaterialization(Object groupID) |
boolean |
TransformationMetadata.hasMaterialization(Object groupID) |
boolean |
BasicQueryMetadataWrapper.hasProcedure(String name) |
boolean |
BasicQueryMetadata.hasProcedure(String name) |
boolean |
QueryMetadataInterface.hasProcedure(String name)
Return true if a procedure exists with the given name (partial or fqn)
|
boolean |
TransformationMetadata.hasProcedure(String name) |
boolean |
BasicQueryMetadataWrapper.isMultiSource(Object modelId) |
boolean |
QueryMetadataInterface.isMultiSource(Object modelId) |
boolean |
TempMetadataAdapter.isMultiSource(Object modelId) |
boolean |
BasicQueryMetadataWrapper.isMultiSourceElement(Object elementId) |
boolean |
QueryMetadataInterface.isMultiSourceElement(Object elementId) |
boolean |
TempMetadataAdapter.isMultiSourceElement(Object elementId) |
boolean |
BasicQueryMetadataWrapper.isProcedure(Object groupID) |
boolean |
BasicQueryMetadata.isProcedure(Object elementID) |
boolean |
QueryMetadataInterface.isProcedure(Object groupID)
Determine whether this is a procedure
|
boolean |
TempMetadataAdapter.isProcedure(Object elementID) |
boolean |
TransformationMetadata.isProcedure(Object groupID) |
boolean |
BasicQueryMetadataWrapper.isScalarGroup(Object groupID) |
boolean |
BasicQueryMetadata.isScalarGroup(Object groupID) |
boolean |
QueryMetadataInterface.isScalarGroup(Object groupID) |
boolean |
TempMetadataAdapter.isScalarGroup(Object groupID) |
boolean |
BasicQueryMetadataWrapper.isTemporaryTable(Object groupID) |
boolean |
BasicQueryMetadata.isTemporaryTable(Object groupID) |
boolean |
QueryMetadataInterface.isTemporaryTable(Object groupID)
Determine whether a group is a temporary table.
|
boolean |
TempMetadataAdapter.isTemporaryTable(Object groupID) |
boolean |
BasicQueryMetadataWrapper.isVirtualGroup(Object groupID) |
boolean |
BasicQueryMetadata.isVirtualGroup(Object groupID) |
boolean |
QueryMetadataInterface.isVirtualGroup(Object groupID)
Determine whether a group is virtual or not.
|
boolean |
TempMetadataAdapter.isVirtualGroup(Object groupID) |
boolean |
TransformationMetadata.isVirtualGroup(Object groupID) |
boolean |
BasicQueryMetadataWrapper.isVirtualModel(Object modelID) |
boolean |
BasicQueryMetadata.isVirtualModel(Object modelID) |
boolean |
QueryMetadataInterface.isVirtualModel(Object modelID)
Determine whether a model is virtual or not.
|
boolean |
TempMetadataAdapter.isVirtualModel(Object modelID) |
boolean |
TransformationMetadata.isVirtualModel(Object modelID) |
boolean |
BasicQueryMetadataWrapper.modelSupports(Object modelID,
int modelConstant) |
boolean |
BasicQueryMetadata.modelSupports(Object modelID,
int modelConstant) |
boolean |
QueryMetadataInterface.modelSupports(Object modelID,
int modelConstant)
Determine whether the specified model supports some feature.
|
boolean |
TransformationMetadata.modelSupports(Object modelID,
int modelConstant) |
| Modifier and Type | Method and Description |
|---|---|
void |
SourceTriggerActionPlanner.CompositeProcessorPlan.close() |
static boolean |
BatchedUpdatePlanner.isEligibleForBatching(Command command,
QueryMetadataInterface metadata)
Returns whether a command can be placed in a connector batch
|
TupleBatch |
SourceTriggerActionPlanner.CompositeProcessorPlan.nextBatch() |
void |
SourceTriggerActionPlanner.CompositeProcessorPlan.open() |
ProcessorPlan |
ProcedurePlanner.optimize(Command procCommand,
IDGenerator idGenerator,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
AnalysisRecord analysisRecord,
CommandContext context)
Produce a ProcessorPlan for the CreateUpdateProcedureCommand on the current node
of the CommandTreeNode, the procedure plan construction involves using the child
processor plans.
|
ProcessorPlan |
CommandPlanner.optimize(Command command,
IDGenerator idGenerator,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
AnalysisRecord analysisRecord,
CommandContext context)
Allows the planner a chance to optimize the canonical plan(s) stored in
the CommandTreeNode tree.
|
ProcessorPlan |
DdlPlanner.optimize(Command command,
IDGenerator idGenerator,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
AnalysisRecord analysisRecord,
CommandContext context) |
ProcessorPlan |
SourceTriggerActionPlanner.optimize(Command command,
IDGenerator idGenerator,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
AnalysisRecord analysisRecord,
CommandContext context) |
ProcessorPlan |
BatchedUpdatePlanner.optimize(Command command,
IDGenerator idGenerator,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
AnalysisRecord analysisRecord,
CommandContext context)
Optimizes batched updates by batching all contiguous commands that relate to the same physical model.
|
ProcessorPlan |
TriggerActionPlanner.optimize(ProcedureContainer userCommand,
TriggerAction ta,
IDGenerator idGenerator,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
AnalysisRecord analysisRecord,
CommandContext context) |
static ProcessorPlan |
QueryOptimizer.optimizePlan(Command command,
QueryMetadataInterface metadata,
IDGenerator idGenerator,
CapabilitiesFinder capFinder,
AnalysisRecord analysisRecord,
CommandContext context) |
| Modifier and Type | Method and Description |
|---|---|
SourceCapabilities |
CapabilitiesFinder.findCapabilities(String modelName) |
| Modifier and Type | Method and Description |
|---|---|
static boolean |
RowBasedSecurityHelper.applyRowSecurity(QueryMetadataInterface metadata,
GroupSymbol group,
CommandContext cc) |
static SymbolMap |
RelationalPlanner.buildGroupingNode(Collection<AggregateSymbol> aggs,
List<? extends Expression> groupingCols,
PlanNode groupNode,
CommandContext cc,
IDGenerator idGenerator)
Build a grouping node that introduces a anon group (without a inline view source node)
|
static void |
RowBasedSecurityHelper.checkConstraints(Command atomicCommand,
Evaluator eval) |
static Command |
RowBasedSecurityHelper.checkUpdateRowBasedFilters(ProcedureContainer container,
Command procedure,
RelationalPlanner planner) |
RelationalPlan |
PlanToProcessConverter.convert(PlanNode planNode) |
protected RelationalNode |
PlanToProcessConverter.convertNode(PlanNode node) |
Query |
RelationalPlanner.createMatViewQuery(Object viewMatadataId,
Object matMetadataId,
String matTableName,
List<? extends Expression> select,
boolean isGlobal) |
org.teiid.query.optimizer.relational.RelationalPlanner.PlanningStackEntry |
RelationalPlanner.createPlanningStackEntry(GroupSymbol group,
Command nestedCommand,
boolean isUpdateProcedure,
Set<org.teiid.query.optimizer.relational.RelationalPlanner.PlanningStackEntry> entries) |
PlanNode |
OptimizerRule.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capabilitiesFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RelationalPlanner.executeRules(RuleStack rules,
PlanNode plan) |
PlanNode |
RelationalPlanner.generatePlan(Command cmd) |
static Criteria |
RowBasedSecurityHelper.getRowBasedFilters(QueryMetadataInterface metadata,
GroupSymbol group,
CommandContext cc,
boolean constraintsOnly) |
static Object |
RelationalPlanner.getTrackableGroup(GroupSymbol group,
QueryMetadataInterface metadata) |
static boolean |
RelationalPlanner.isNoCacheGroup(QueryMetadataInterface metadata,
Object metadataID,
Option option) |
static List<? extends Expression> |
ColumnMaskingHelper.maskColumns(List<ElementSymbol> cols,
GroupSymbol group,
QueryMetadataInterface metadata,
CommandContext cc) |
RelationalPlan |
RelationalPlanner.optimize(Command command) |
void |
RelationalPlanner.planSubqueries(Set<GroupSymbol> groupSymbols,
PlanNode node,
List<SubqueryContainer<?>> subqueryContainers,
boolean isStackEntry,
boolean skipPlanning) |
| Modifier and Type | Method and Description |
|---|---|
void |
PlanNode.recordDebugAnnotation(String annotation,
Object modelID,
String resolution,
AnalysisRecord record,
QueryMetadataInterface metadata) |
| Modifier and Type | Method and Description |
|---|---|
TeiidComponentException |
CriteriaCapabilityValidatorVisitor.getException() |
| Modifier and Type | Method and Description |
|---|---|
static LinkedHashMap<ElementSymbol,Expression> |
FrameUtil.buildSymbolMap(GroupSymbol oldGroup,
GroupSymbol newGroup,
QueryMetadataInterface metadata)
creates a symbol map of elements in oldGroup mapped to corresponding elements in newGroup
if newGroup is null, then a mapping of oldGroup elements to null constants will be returned
|
static boolean |
CriteriaCapabilityValidatorVisitor.canPushLanguageObject(LanguageObject obj,
Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
AnalysisRecord analysisRecord) |
static boolean |
CriteriaCapabilityValidatorVisitor.canPushLanguageObject(LanguageObject obj,
Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
AnalysisRecord analysisRecord,
CriteriaCapabilityValidatorVisitor.ValidatorOptions parameterObject) |
static NewCalculateCostUtil.DependentCostAnalysis |
NewCalculateCostUtil.computeCostForDepJoin(PlanNode joinNode,
boolean leftIndependent,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
CommandContext context)
Computes the cost of a Dependent Join
The worst possible cost will arise from a high independent ndv (many dependent sets) and a low dependent ndv (possibly many matches per set)
This logic uses the same assumption as criteria in that ndv is used as a divisor of cardinality.
|
static NewCalculateCostUtil.DependentCostAnalysis |
NewCalculateCostUtil.computeCostForDepJoin(PlanNode independentNode,
PlanNode dependentNode,
List independentExpressions,
List dependentExpressions,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
CommandContext context) |
PlanNode |
RuleDecomposeJoin.decomposeJoin(PlanNode joinNode,
PlanNode root,
QueryMetadataInterface metadata,
CommandContext context) |
PlanNode |
RuleCleanCriteria.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RuleCopyCriteria.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context)
Execute the rule as described in the class comments.
|
PlanNode |
RulePlanSorts.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capabilitiesFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RuleChooseJoinStrategy.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RuleMergeCriteria.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RuleImplementJoinStrategy.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capabilitiesFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RuleRaiseNull.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RuleValidateWhereAll.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context)
Verifies that a model with "supports where all" is being passed an atomic
query with a criteria.
|
PlanNode |
RuleDecomposeJoin.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capabilitiesFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RulePlaceAccess.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RulePushNonJoinCriteria.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context)
Execute the rule as described in the class comments.
|
PlanNode |
RulePushSelectCriteria.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context)
Execute the rule as described in the class comments.
|
PlanNode |
RuleRemoveOptionalJoins.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RulePlanJoins.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capabilitiesFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RuleMergeVirtual.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RulePlanOuterJoins.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capabilitiesFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RulePushAggregates.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext ctx) |
PlanNode |
RulePlanProcedures.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capabilitiesFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RuleChooseDependent.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RulePushLargeIn.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capabilitiesFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RulePlanSubqueries.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RuleRaiseAccess.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RulePlanUnions.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capabilitiesFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RuleCollapseSource.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RulePushLimit.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capabilitiesFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RuleApplySecurity.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capabilitiesFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RuleAssignOutputElements.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context)
Execute the rule.
|
PlanNode |
RuleCalculateCost.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capabilitiesFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
PlanNode |
RuleSubstituteExpressions.execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capabilitiesFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
static String |
RuleAssignOutputElements.findFunctionTarget(Function function,
FunctionDescriptor fd,
CapabilitiesFinder capabiltiesFinder,
QueryMetadataInterface metadata)
Find the first schema name against which this function can be executed, or null for no target
|
RulePlanSubqueries.PlannedResult |
RulePlanSubqueries.findSubquery(Criteria crit,
boolean unnest) |
RulePlanSubqueries.PlannedResult |
RulePlanSubqueries.findSubquery(Expression expr,
boolean unnest,
RulePlanSubqueries.PlannedResult result,
boolean requireSingleRow) |
static ExecutionFactory.NullOrder |
CapabilitiesUtil.getDefaultNullOrder(Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static PlanNode |
RuleChooseDependent.getDependentCriteriaNode(String id,
List<Expression> independentExpressions,
List<Expression> dependentExpressions,
PlanNode indNode,
QueryMetadataInterface metadata,
NewCalculateCostUtil.DependentCostAnalysis dca,
Boolean bound,
Option.MakeDep makeDep) |
static int |
CapabilitiesUtil.getIntProperty(SourceCapabilities.Capability cap,
Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder)
Values are expected to be non-negative except for unknown/invalid = -1
|
static Object |
NewCalculateCostUtil.getKeyUsed(Collection<? extends Expression> allElements,
Set<GroupSymbol> groups,
QueryMetadataInterface metadata,
Boolean unique) |
static int |
CapabilitiesUtil.getMaxDependentPredicates(Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static int |
CapabilitiesUtil.getMaxFromGroups(Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static int |
CapabilitiesUtil.getMaxInCriteriaSize(Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static int |
CapabilitiesUtil.getMaxProjectedColumns(Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static Object |
CapabilitiesUtil.getProperty(SourceCapabilities.Capability cap,
Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static ExecutionFactory.SupportedJoinCriteria |
CapabilitiesUtil.getSupportedJoinCriteria(Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
RulePlanSubqueries.isDistinct(Query query,
List<Expression> expressions,
QueryMetadataInterface metadata) |
static boolean |
CapabilitiesUtil.isSameConnector(Object modelID,
Object modelID1,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
RuleRaiseAccess.matchesForeignKey(QueryMetadataInterface metadata,
Collection<Object> leftIds,
Collection<Object> rightIds,
GroupSymbol leftGroup,
boolean exact,
boolean inner) |
boolean |
RulePlanSubqueries.planQuery(Collection<GroupSymbol> leftGroups,
boolean requireDistinct,
RulePlanSubqueries.PlannedResult plannedResult) |
static boolean |
CapabilitiesUtil.requiresCriteria(Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
CapabilitiesUtil.supports(SourceCapabilities.Capability cap,
Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
CapabilitiesUtil.supportsAggregateFunction(Object modelID,
AggregateSymbol aggregate,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
CapabilitiesUtil.supportsAggregates(List groupCols,
Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
CapabilitiesUtil.supportsCaseExpression(Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
CapabilitiesUtil.supportsGroupAliases(Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
CapabilitiesUtil.supportsJoin(Object modelID,
JoinType joinType,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
CapabilitiesUtil.supportsOrderBy(Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
CapabilitiesUtil.supportsRowLimit(Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
CapabilitiesUtil.supportsRowOffset(Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
CapabilitiesUtil.supportsScalarFunction(Object modelID,
Function function,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
CapabilitiesUtil.supportsSearchedCaseExpression(Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
CapabilitiesUtil.supportsSelectDistinct(Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
CapabilitiesUtil.supportsSelectExpression(Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
CapabilitiesUtil.supportsSelfJoins(Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
CapabilitiesUtil.supportsSetOp(Object modelID,
SetQuery.Operation setOp,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
CapabilitiesUtil.supportsSetQueryOrderBy(Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
CapabilitiesUtil.useAnsiJoin(Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder) |
static boolean |
NewCalculateCostUtil.usesKey(Collection<? extends Expression> allElements,
QueryMetadataInterface metadata)
TODO: this uses key check is not really accurate, it doesn't take into consideration where
we are in the plan.
|
static boolean |
NewCalculateCostUtil.usesKey(Collection<? extends Expression> allElements,
Set<GroupSymbol> groups,
QueryMetadataInterface metadata,
boolean unique) |
static boolean |
NewCalculateCostUtil.usesKey(Criteria crit,
QueryMetadataInterface metadata) |
static Object |
CriteriaCapabilityValidatorVisitor.validateCommandPushdown(Object critNodeModelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
AccessNode aNode,
boolean considerConformed) |
static Object |
CriteriaCapabilityValidatorVisitor.validateSubqueryPushdown(SubqueryContainer<?> subqueryContainer,
Object critNodeModelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
AnalysisRecord analysisRecord)
Return null if the subquery cannot be pushed down, otherwise the model
id of the pushdown target.
|
| Constructor and Description |
|---|
CriteriaCapabilityValidatorVisitor(Object modelID,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
SourceCapabilities caps) |
| Modifier and Type | Class and Description |
|---|---|
static class |
QueryProcessor.ExpiredTimeSliceException |
| Modifier and Type | Method and Description |
|---|---|
void |
DdlPlan.close() |
void |
QueryProcessor.close() |
abstract void |
ProcessorPlan.close()
Close the plan after processing.
|
void |
BatchedUpdatePlan.close() |
void |
BatchCollector.BatchProducer.close() |
TupleBuffer |
BatchCollector.collectTuples() |
TupleBuffer |
BatchCollector.collectTuples(boolean singleBatch) |
BatchCollector |
QueryProcessor.createBatchCollector() |
QueryProcessor |
QueryProcessor.ProcessorFactory.createQueryProcessor(String query,
String recursionGroup,
CommandContext commandContext,
Object... params) |
protected List<?> |
BatchIterator.finalRow() |
protected void |
BatchCollector.flushBatchDirect(TupleBatch batch,
boolean add) |
protected TupleBatch |
BatchIterator.getBatch(long row) |
TupleBuffer |
QueryProcessor.getBuffer(int maxRows) |
TupleBuffer |
ProcessorPlan.getBuffer(int maxRows)
return the final tuple buffer or null if not available
|
TupleBuffer |
BatchCollector.BatchProducer.getBuffer(int maxRows)
return the final tuple buffer or null if not available
|
protected List<?> |
BatchIterator.getCurrentTuple() |
PreparedPlan |
QueryProcessor.ProcessorFactory.getPreparedPlan(String query,
String recursionGroup,
CommandContext commandContext,
QueryMetadataInterface metadata) |
void |
QueryProcessor.init() |
Object |
ProcessorDataManager.lookupCodeValue(CommandContext context,
String codeTableName,
String returnElementName,
String keyElementName,
Object keyValue)
Lookup a value from a cached code table.
|
void |
BatchIterator.mark() |
TupleBatch |
DdlPlan.nextBatch() |
TupleBatch |
QueryProcessor.nextBatch() |
abstract TupleBatch |
ProcessorPlan.nextBatch()
Get a batch of results or possibly an Exception.
|
TupleBatch |
BatchedUpdatePlan.nextBatch() |
TupleBatch |
BatchCollector.BatchProducer.nextBatch()
Get a batch of results or possibly an Exception.
|
List<Object> |
BatchCollector.BatchProducerTupleSource.nextTuple() |
void |
DdlPlan.open() |
abstract void |
ProcessorPlan.open()
Open the plan for processing.
|
void |
BatchedUpdatePlan.open() |
void |
BatchIterator.readAhead(long limit) |
TupleSource |
ProcessorDataManager.registerRequest(CommandContext context,
Command command,
String modelName,
RegisterRequestParameter parameterObject) |
protected List<?> |
BatchCollector.BatchProducerTupleSource.updateTuple(List<?> tuple) |
| Constructor and Description |
|---|
BatchCollector(BatchCollector.BatchProducer sourceNode,
BufferManager bm,
CommandContext context,
boolean forwardOnly) |
| Modifier and Type | Method and Description |
|---|---|
static void |
ProcedurePlan.checkNotNull(ElementSymbol param,
Object value,
QueryMetadataInterface metadata) |
void |
ForEachRowPlan.close() |
void |
ProcedurePlan.close() |
void |
ProcedurePlan.executePlan(ProcessorPlan command,
String rsName,
Map<ElementSymbol,ElementSymbol> procAssignments,
CreateCursorResultSetInstruction.Mode mode,
boolean usesLocalTemp) |
List<?> |
ProcedurePlan.getCurrentRow(String rsName) |
List |
ProcedurePlan.getSchema(String rsName)
Get the schema from the tuple source that
represents the columns in a result set
|
void |
ProcedurePlan.incrementProgramCounter() |
boolean |
ProcedurePlan.iterateCursor(String rsName) |
Object |
ProcedurePlan.lookupCodeValue(CommandContext context,
String codeTableName,
String returnElementName,
String keyElementName,
Object keyValue) |
TupleBatch |
ForEachRowPlan.nextBatch() |
TupleBatch |
ProcedurePlan.nextBatch() |
TupleBatch |
ProcedurePlan.nextBatchDirect() |
void |
ForEachRowPlan.open() |
void |
ProcedurePlan.open() |
void |
ProcedurePlan.pop(boolean success) |
void |
RepeatedInstruction.postInstruction(ProcedurePlan procEnv) |
void |
WhileInstruction.postInstruction(ProcedurePlan procEnv) |
void |
LoopInstruction.postInstruction(ProcedurePlan procEnv) |
abstract void |
ProgramInstruction.process(ProcedurePlan env)
Allow this instruction to do whatever processing it needs, and to
in turn manipulate the running program.
|
void |
WhileInstruction.process(ProcedurePlan env) |
void |
AssignmentInstruction.process(ProcedurePlan procEnv)
Updates the current variable context with a value for the Variable
defined using a DeclareInstruction, the variable value is obtained by either processing
a expression or a command(stored as a processplan).
|
void |
BlockInstruction.process(ProcedurePlan procEnv) |
void |
ErrorInstruction.process(ProcedurePlan env) |
void |
ReturnInstruction.process(ProcedurePlan env) |
void |
BranchingInstruction.process(ProcedurePlan env) |
void |
IfInstruction.process(ProcedurePlan procEnv)
This instruction will evaluate it's criteria, if it evaluates
to true, it will push the corresponding sub Program on to the top of the
program stack, and break from the loop.
|
void |
LoopInstruction.process(ProcedurePlan procEnv) |
void |
ExecDynamicSqlInstruction.process(ProcedurePlan procEnv)
Processing this instruction executes the ProcessorPlan for the command on
the CommandStatement of the update procedure language.
|
void |
CreateCursorResultSetInstruction.process(ProcedurePlan procEnv) |
TupleSource |
ProcedurePlan.registerRequest(CommandContext context,
Command command,
String modelName,
RegisterRequestParameter parameterObject) |
boolean |
RepeatedInstruction.testCondition(ProcedurePlan procEnv) |
boolean |
WhileInstruction.testCondition(ProcedurePlan procEnv) |
boolean |
LoopInstruction.testCondition(ProcedurePlan procEnv) |
| Modifier and Type | Method and Description |
|---|---|
void |
SortingFilter.addInputDirect(List<?> tuple,
CommandContext commandContext) |
void |
RelationalPlan.close() |
void |
RelationalNode.close() |
protected void |
GroupingNode.closeGroup(int colDiff,
boolean reset,
CommandContext context) |
protected boolean |
MergeJoinStrategy.compareToPrevious(org.teiid.query.processor.relational.SourceState target) |
void |
EnhancedSortMergeJoinStrategy.createIndex(org.teiid.query.processor.relational.SourceState state,
MergeJoinStrategy.SortOption sortOption)
Create an index of the smaller size
|
protected void |
SortUtility.doMerge(int rowLimit) |
protected Object |
SubqueryAwareEvaluator.evaluateProcedure(Function function,
List<?> tuple,
Object[] values)
Implements procedure function handling.
|
protected Object |
SubqueryAwareEvaluator.evaluatePushdown(Function function,
List<?> tuple,
Object[] values)
Implements must pushdown function handling if supported by the source.
|
protected ValueIterator |
SubqueryAwareEvaluator.evaluateSubquery(SubqueryContainer<?> container,
List<?> tuple) |
TupleBuffer |
RelationalPlan.getBuffer(int maxRows) |
TupleBuffer |
RelationalNode.getBuffer(int maxRows)
return the final tuple buffer or null if not available
|
TupleBuffer |
SortNode.getBufferDirect(int maxRows) |
TupleBuffer |
LimitNode.getBufferDirect(int maxRows) |
TupleBuffer |
ProjectNode.getBufferDirect(int maxRows) |
protected TupleBuffer |
RelationalNode.getBufferDirect(int maxRows)
For subclasses to override if they wish to return a buffer rather than batches.
|
Set<Object> |
DependentValueSource.getCachedSet(Expression valueExpression) |
Object |
SortingFilter.getResult(CommandContext commandContext) |
org.teiid.query.processor.relational.TupleSourceValueIterator |
DependentValueSource.getValueIterator(Expression valueExpression) |
protected void |
SortUtility.initialSort(boolean onePass,
boolean lowLatency,
int rowLimit)
creates sorted sublists stored in tuplebuffers
|
protected void |
JoinStrategy.loadLeft() |
protected void |
MergeJoinStrategy.loadLeft() |
protected void |
EnhancedSortMergeJoinStrategy.loadLeft() |
protected void |
NestedLoopJoinStrategy.loadRight() |
protected void |
JoinStrategy.loadRight() |
protected void |
MergeJoinStrategy.loadRight() |
protected void |
EnhancedSortMergeJoinStrategy.loadRight() |
protected void |
SortUtility.mergePhase(int rowLimit) |
TupleBatch |
RelationalPlan.nextBatch() |
TupleBatch |
RelationalNode.nextBatch()
Wrapper for nextBatchDirect that does performance timing - callers
should always call this rather than nextBatchDirect().
|
TupleBatch |
AccessNode.nextBatchDirect() |
TupleBatch |
GroupingNode.nextBatchDirect() |
TupleBatch |
DupRemoveNode.nextBatchDirect() |
TupleBatch |
PlanExecutionNode.nextBatchDirect() |
TupleBatch |
UnionAllNode.nextBatchDirect() |
TupleBatch |
NullNode.nextBatchDirect() |
TupleBatch |
SortNode.nextBatchDirect() |
protected TupleBatch |
TextTableNode.nextBatchDirect() |
TupleBatch |
SelectNode.nextBatchDirect() |
protected TupleBatch |
ArrayTableNode.nextBatchDirect() |
TupleBatch |
ProjectIntoNode.nextBatchDirect()
Get batch from child node
Walk through each row of child batch
Bind values to insertCommand
Execute insertCommand
Update insertCount
When no more data is available, output batch with single row containing insertCount
|
TupleBatch |
JoinNode.nextBatchDirect() |
protected TupleBatch |
LimitNode.nextBatchDirect() |
protected TupleBatch |
WindowFunctionProjectNode.nextBatchDirect() |
protected TupleBatch |
ObjectTableNode.nextBatchDirect() |
TupleBatch |
ProjectNode.nextBatchDirect() |
protected abstract TupleBatch |
RelationalNode.nextBatchDirect()
Template method for subclasses to implement.
|
TupleBatch |
BatchedUpdateNode.nextBatchDirect() |
TupleBatch |
UnionAllNode.nextBatchDirectInternal() |
protected TupleBatch |
JoinNode.nextBatchDirectInternal() |
protected Command |
AccessNode.nextCommand() |
protected Command |
DependentAccessNode.nextCommand() |
List<TupleBuffer> |
SortUtility.onePassSort(boolean lowLatency) |
void |
AccessNode.open() |
void |
DependentProcedureAccessNode.open() |
void |
DupRemoveNode.open() |
void |
PlanExecutionNode.open() |
void |
UnionAllNode.open() |
void |
TextTableNode.open() |
void |
SelectNode.open() |
void |
JoinNode.open() |
void |
LimitNode.open() |
void |
DependentProcedureExecutionNode.open() |
void |
RelationalPlan.open() |
void |
ObjectTableNode.open() |
void |
RelationalNode.open() |
void |
BatchedUpdateNode.open() |
void |
UnionAllNode.openInternal() |
void |
JoinNode.openInternal() |
protected void |
JoinStrategy.openLeft() |
protected void |
NestedTableJoinStrategy.openRight() |
protected void |
JoinStrategy.openRight() |
Criteria |
DependentCriteriaProcessor.prepareCriteria() |
protected boolean |
PlanExecutionNode.prepareNextCommand() |
protected boolean |
DependentProcedureExecutionNode.prepareNextCommand() |
protected boolean |
InsertPlanExecutionNode.prepareNextCommand() |
protected boolean |
AccessNode.prepareNextCommand(Command atomicCommand) |
protected boolean |
DependentProcedureAccessNode.prepareNextCommand(Command atomicCommand) |
protected boolean |
DependentAccessNode.prepareNextCommand(Command atomicCommand) |
protected boolean |
DependentProcedureCriteriaProcessor.prepareNextCommand(VariableContext context) |
protected void |
NestedTableJoinStrategy.process() |
protected abstract void |
JoinStrategy.process() |
protected void |
MergeJoinStrategy.process() |
protected void |
EnhancedSortMergeJoinStrategy.process() |
Criteria |
DependentCriteriaProcessor.replaceDependentCriteria(AbstractSetCriteria crit,
DependentCriteriaProcessor.SetState state) |
protected void |
SubqueryAwareRelationalNode.setReferenceValues(TableFunctionReference ref) |
static boolean |
RelationalNodeUtil.shouldExecute(Command command,
boolean simplifyCriteria)
Decides whether a command needs to be executed.
|
static boolean |
RelationalNodeUtil.shouldExecute(Command command,
boolean simplifyCriteria,
boolean duringPlanning) |
TupleBuffer |
SortUtility.sort() |
TupleBuffer |
SortUtility.sort(int rowLimit) |
static void |
RelationalNode.unwrapException(TeiidRuntimeException e) |
| Constructor and Description |
|---|
DependentCriteriaProcessor(int maxSetSize,
int maxPredicates,
RelationalNode dependentNode,
Criteria dependentCriteria) |
DependentProcedureCriteriaProcessor(RelationalNode dependentNode,
Criteria dependentCriteria,
List references,
List defaults) |
| Modifier and Type | Method and Description |
|---|---|
static Command |
QueryResolver.expandCommand(ProcedureContainer proc,
QueryMetadataInterface metadata,
AnalysisRecord analysisRecord) |
Command |
ProcedureContainerResolver.expandCommand(ProcedureContainer procCommand,
QueryMetadataInterface metadata,
AnalysisRecord analysis)
Expand a command by finding and attaching all subcommands to the command.
|
static void |
ProcedureContainerResolver.findChildCommandMetadata(Command currentCommand,
GroupSymbol container,
int type,
QueryMetadataInterface metadata,
boolean inferProcedureResultSetColumns)
Set the appropriate "external" metadata for the given command
|
protected abstract String |
ProcedureContainerResolver.getPlan(QueryMetadataInterface metadata,
GroupSymbol group)
For a given resolver, this returns the unparsed command.
|
static UpdateValidator.UpdateInfo |
ProcedureContainerResolver.getUpdateInfo(GroupSymbol group,
QueryMetadataInterface metadata) |
static UpdateValidator.UpdateInfo |
ProcedureContainerResolver.getUpdateInfo(GroupSymbol group,
QueryMetadataInterface metadata,
int type,
boolean validate) |
static Map<ElementSymbol,Expression> |
QueryResolver.getVariableValues(Command command,
boolean changingOnly,
QueryMetadataInterface metadata) |
Map<ElementSymbol,Expression> |
VariableResolver.getVariableValues(Command command,
boolean changingOnly,
QueryMetadataInterface metadata) |
static boolean |
QueryResolver.isView(GroupSymbol virtualGroup,
QueryMetadataInterface qmi) |
static TempMetadataStore |
QueryResolver.resolveCommand(Command currentCommand,
GroupSymbol container,
int type,
QueryMetadataInterface metadata,
boolean inferProcedureResultSetColumns)
Resolve a command in a given type container and type context.
|
static TempMetadataStore |
QueryResolver.resolveCommand(Command command,
QueryMetadataInterface metadata)
This implements an algorithm to resolve all the symbols created by the
parser into real metadata IDs
|
static TempMetadataStore |
QueryResolver.resolveCommand(Command currentCommand,
QueryMetadataInterface metadata,
boolean resolveNullLiterals) |
void |
CommandResolver.resolveCommand(Command command,
TempMetadataAdapter metadata,
boolean resolveNullLiterals)
Resolve the command using the metadata.
|
void |
ProcedureContainerResolver.resolveCommand(Command command,
TempMetadataAdapter metadata,
boolean resolveNullLiterals) |
static void |
QueryResolver.resolveCriteria(Criteria criteria,
QueryMetadataInterface metadata)
Resolve just a criteria.
|
protected void |
ProcedureContainerResolver.resolveGroup(TempMetadataAdapter metadata,
ProcedureContainer procCommand) |
abstract void |
ProcedureContainerResolver.resolveProceduralCommand(Command command,
TempMetadataAdapter metadata) |
static void |
QueryResolver.resolveSubqueries(Command command,
TempMetadataAdapter metadata,
Collection<GroupSymbol> externalGroups) |
static QueryNode |
QueryResolver.resolveView(GroupSymbol virtualGroup,
QueryNode qnode,
String cacheString,
QueryMetadataInterface qmi,
boolean logValidation) |
static void |
QueryResolver.validateProjectedSymbols(GroupSymbol virtualGroup,
QueryMetadataInterface qmi,
Command result) |
| Modifier and Type | Method and Description |
|---|---|
static List<ElementSymbol> |
InsertResolver.getAutoIncrementKey(Object metadataId,
List<ElementSymbol> columns,
QueryMetadataInterface metadata) |
protected String |
InsertResolver.getPlan(QueryMetadataInterface metadata,
GroupSymbol group) |
protected String |
DeleteResolver.getPlan(QueryMetadataInterface metadata,
GroupSymbol group) |
protected String |
UpdateResolver.getPlan(QueryMetadataInterface metadata,
GroupSymbol group) |
protected String |
ExecResolver.getPlan(QueryMetadataInterface metadata,
GroupSymbol group) |
Map<ElementSymbol,Expression> |
InsertResolver.getVariableValues(Command command,
boolean changingOnly,
QueryMetadataInterface metadata) |
Map<ElementSymbol,Expression> |
UpdateResolver.getVariableValues(Command command,
boolean changingOnly,
QueryMetadataInterface metadata) |
void |
UpdateProcedureResolver.resolveBlock(CreateProcedureCommand command,
Block block,
GroupContext originalExternalGroups,
TempMetadataAdapter original) |
void |
SimpleQueryResolver.resolveCommand(Command command,
TempMetadataAdapter metadata,
boolean resolveNullLiterals) |
void |
BatchedUpdateResolver.resolveCommand(Command command,
TempMetadataAdapter metadata,
boolean resolveNullLiterals) |
void |
SetQueryResolver.resolveCommand(Command command,
TempMetadataAdapter metadata,
boolean resolveNullLiterals) |
void |
TempTableResolver.resolveCommand(Command command,
TempMetadataAdapter metadata,
boolean resolveNullLiterals) |
void |
DynamicCommandResolver.resolveCommand(Command command,
TempMetadataAdapter metadata,
boolean resolveNullLiterals) |
void |
UpdateProcedureResolver.resolveCommand(Command command,
TempMetadataAdapter metadata,
boolean resolveNullLiterals) |
void |
AlterResolver.resolveCommand(Command command,
TempMetadataAdapter metadata,
boolean resolveNullLiterals) |
protected void |
InsertResolver.resolveGroup(TempMetadataAdapter metadata,
ProcedureContainer procCommand) |
protected void |
ExecResolver.resolveGroup(TempMetadataAdapter metadata,
ProcedureContainer procCommand) |
void |
InsertResolver.resolveProceduralCommand(Command command,
TempMetadataAdapter metadata)
Resolve an INSERT.
|
void |
DeleteResolver.resolveProceduralCommand(Command command,
TempMetadataAdapter metadata) |
void |
UpdateResolver.resolveProceduralCommand(Command command,
TempMetadataAdapter metadata) |
void |
ExecResolver.resolveProceduralCommand(Command command,
TempMetadataAdapter metadata) |
void |
SetQueryResolver.resolveSetQuery(TempMetadataAdapter metadata,
boolean resolveNullLiterals,
SetQuery setQuery,
QueryCommand firstCommand,
QueryCommand rightCommand) |
| Modifier and Type | Method and Description |
|---|---|
TeiidComponentException |
ResolverVisitor.getComponentException() |
| Modifier and Type | Method and Description |
|---|---|
static void |
ResolverUtil.clearGroupInfo(GroupSymbol group,
QueryMetadataInterface metadata) |
static void |
ResolverUtil.findKeyPreserved(FromClause clause,
Set<GroupSymbol> keyPreservingGroups,
QueryMetadataInterface metadata) |
static void |
ResolverUtil.findKeyPreserved(Query query,
Set<GroupSymbol> keyPreservingGroups,
QueryMetadataInterface metadata) |
static List<GroupSymbol> |
ResolverUtil.findMatchingGroups(String groupContext,
Collection<GroupSymbol> groups,
QueryMetadataInterface metadata) |
static List |
ResolverUtil.getAccessPatternElementsInGroups(QueryMetadataInterface metadata,
Collection groups,
boolean flatten)
When access patterns are flattened, they are an approximation the user
may need to enter as criteria.
|
static Expression |
ResolverUtil.getDefault(ElementSymbol symbol,
QueryMetadataInterface metadata)
Get the default value for the parameter, which could be null
if the parameter is set to NULLABLE.
|
static boolean |
ResolverUtil.hasDefault(Object mid,
QueryMetadataInterface metadata) |
static List<ElementSymbol> |
ResolverUtil.resolveElementsInGroup(GroupSymbol group,
QueryMetadataInterface metadata)
Returns the resolved elements in the given group.
|
static void |
ResolverUtil.resolveGroup(GroupSymbol symbol,
QueryMetadataInterface metadata) |
static void |
ResolverUtil.resolveImplicitTempGroup(TempMetadataAdapter metadata,
GroupSymbol symbol,
List symbols) |
static void |
ResolverVisitor.resolveLanguageObject(LanguageObject obj,
Collection<GroupSymbol> groups,
GroupContext externalContext,
QueryMetadataInterface metadata) |
static void |
ResolverVisitor.resolveLanguageObject(LanguageObject obj,
Collection<GroupSymbol> groups,
QueryMetadataInterface metadata) |
static void |
ResolverVisitor.resolveLanguageObject(LanguageObject obj,
QueryMetadataInterface metadata) |
static ResolverUtil.ResolvedLookup |
ResolverUtil.resolveLookup(Function lookup,
QueryMetadataInterface metadata) |
static void |
ResolverUtil.resolveOrderBy(OrderBy orderBy,
QueryCommand command,
TempMetadataAdapter metadata)
Attempt to resolve the order by throws QueryResolverException if the
symbol is not of SingleElementSymbol type
|
void |
ResolverVisitor.throwException(boolean includeUnresolvedFunctions) |
| Modifier and Type | Method and Description |
|---|---|
static Command |
QueryRewriter.createDeleteProcedure(Delete delete,
QueryMetadataInterface metadata,
CommandContext context) |
static Query |
QueryRewriter.createInlineViewQuery(GroupSymbol inlineGroup,
Command nested,
QueryMetadataInterface metadata,
List<? extends Expression> actualSymbols) |
static Command |
QueryRewriter.createUpdateProcedure(Update update,
QueryMetadataInterface metadata,
CommandContext context) |
static Command |
QueryRewriter.evaluateAndRewrite(Command command,
Evaluator eval,
CommandContext context,
QueryMetadataInterface metadata) |
static Criteria |
QueryRewriter.evaluateAndRewrite(Criteria criteria,
Evaluator eval,
CommandContext context,
QueryMetadataInterface metadata) |
static Command |
QueryRewriter.rewrite(Command command,
QueryMetadataInterface metadata,
CommandContext context) |
static Command |
QueryRewriter.rewrite(Command command,
QueryMetadataInterface metadata,
CommandContext context,
Map<ElementSymbol,Expression> variableValues) |
static Command |
QueryRewriter.rewriteAsUpsertProcedure(Insert insert,
QueryMetadataInterface metadata,
CommandContext context) |
static Criteria |
QueryRewriter.rewriteCriteria(Criteria criteria,
CommandContext context,
QueryMetadataInterface metadata)
Rewrite the criteria by evaluating some trivial cases.
|
static Expression |
QueryRewriter.rewriteExpression(Expression expression,
CommandContext context,
QueryMetadataInterface metadata) |
static Expression |
QueryRewriter.rewriteExpression(Expression expression,
CommandContext context,
QueryMetadataInterface metadata,
boolean rewriteSubcommands) |
QueryCommand |
QueryRewriter.rewriteOrderBy(QueryCommand queryCommand)
Rewrite the order by clause.
|
static void |
QueryRewriter.rewriteOrderBy(QueryCommand queryCommand,
OrderBy orderBy,
List projectedSymbols,
CommandContext context,
QueryMetadataInterface metadata) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
CollectionValueIterator.hasNext() |
Object |
CollectionValueIterator.next() |
| Modifier and Type | Method and Description |
|---|---|
static SymbolMap |
SymbolMap.createSymbolMap(GroupSymbol virtualGroup,
List<? extends Expression> projectCols,
QueryMetadataInterface metadata) |
Set<Object> |
ValueIteratorSource.getCachedSet(Expression valueExpression) |
Object |
VariableContext.getGlobalValue(String variable) |
ValueIterator |
ValueIteratorSource.getValueIterator(Expression valueExpression)
Attempt to obtain a ValueIterator from this source.
|
boolean |
ValueIterator.hasNext()
Returns true if the iteration has more values.
|
Object |
ValueIterator.next()
Returns the next Expression or Object value in the interation.
|
| Modifier and Type | Method and Description |
|---|---|
TempTable |
GlobalTableStoreImpl.createMatTable(String tableName,
GroupSymbol group) |
TempTable |
GlobalTableStore.createMatTable(String tableName,
GroupSymbol group) |
protected abstract TupleSource |
TempTableDataManager.ProxyTupleSource.createTupleSource() |
TupleSource |
TempTable.createTupleSource(List<? extends Expression> projectedCols,
Criteria condition,
OrderBy orderBy) |
TupleSource |
TempTable.delete(Criteria crit) |
TempMetadataID |
GlobalTableStoreImpl.getCodeTableMetadataId(String codeTableName,
String returnElementName,
String keyElementName,
String matTableName) |
TempMetadataID |
GlobalTableStore.getCodeTableMetadataId(String codeTableName,
String returnElementName,
String keyElementName,
String matTableName) |
static Create |
GlobalTableStoreImpl.getCreateCommand(GroupSymbol group,
boolean matview,
QueryMetadataInterface metadata) |
TempMetadataID |
GlobalTableStoreImpl.getGlobalTempTableMetadataId(Object viewId) |
TempMetadataID |
GlobalTableStore.getGlobalTempTableMetadataId(Object groupID) |
TupleSource |
TempTable.insert(TupleSource tuples,
List<ElementSymbol> variables,
boolean canUndo,
boolean upsert,
CommandContext context) |
Object |
TempTableDataManager.lookupCodeValue(CommandContext context,
String codeTableName,
String returnElementName,
String keyElementName,
Object keyValue) |
List<?> |
TempTableDataManager.ProxyTupleSource.nextTuple() |
TempTable |
TempTableStore.TableProcessor.process(TempTable tempTable)
Ensure the temp table is ready for use.
|
TempTable |
TempTableStore.RecursiveTableProcessor.process(TempTable tempTable) |
TupleSource |
TempTableDataManager.registerRequest(CommandContext context,
Command command,
String modelName,
RegisterRequestParameter parameterObject) |
void |
TempTableStore.removeTempTables() |
static List<ElementSymbol> |
GlobalTableStoreImpl.resolveIndex(QueryMetadataInterface metadata,
List<ElementSymbol> allColumns,
Object pk)
Return a list of ElementSymbols for the given index/key object
|
TupleSource |
TempTable.update(Criteria crit,
SetClauseList update) |
List<?> |
GlobalTableStoreImpl.updateMatViewRow(String matTableName,
List<?> tuple,
boolean delete) |
List<?> |
GlobalTableStore.updateMatViewRow(String matTableName,
List<?> tuple,
boolean delete) |
| Modifier and Type | Method and Description |
|---|---|
Object |
CommandContext.getFromContext(Expression expression) |
| Modifier and Type | Method and Description |
|---|---|
TeiidComponentException |
AbstractValidationVisitor.getException() |
| Modifier and Type | Method and Description |
|---|---|
void |
UpdateValidator.validate(Command command,
List<ElementSymbol> viewSymbols) |
static ValidatorReport |
Validator.validate(LanguageObject object,
QueryMetadataInterface metadata) |
static ValidatorReport |
Validator.validate(LanguageObject object,
QueryMetadataInterface metadata,
AbstractValidationVisitor visitor) |
| Modifier and Type | Method and Description |
|---|---|
void |
LogonImpl.assertIdentity(SessionToken checkSession) |
ResultsFuture<?> |
LogonImpl.ping() |
ResultsFuture<?> |
LogonImpl.ping(Collection<String> sessions) |
| Modifier and Type | Method and Description |
|---|---|
XMLType |
SaxonXQueryExpression.createXMLType(net.sf.saxon.om.SequenceIterator iter,
BufferManager bufferManager,
boolean emptyOnEmpty,
CommandContext context) |
static Object |
XQueryEvaluator.evaluateXMLQuery(List<?> tuple,
XMLQuery xmlQuery,
boolean exists,
Map<String,Object> parameters,
CommandContext context) |
Object |
XMLHelperImpl.evaluateXMLQuery(List<?> tuple,
XMLQuery xmlQuery,
boolean exists,
Map<String,Object> parameters,
CommandContext context) |
static SaxonXQueryExpression.Result |
XQueryEvaluator.evaluateXQuery(SaxonXQueryExpression xquery,
Object context,
Map<String,Object> parameterValues,
SaxonXQueryExpression.RowProcessor processor,
CommandContext commandContext) |
RelationalNode |
XMLHelperImpl.newXMLTableNode(int id,
XMLTable xt,
ArrayList<XMLTable.XMLColumn> filteredColumns) |
protected TupleBatch |
SaxonXMLTableNode.nextBatchDirect() |
void |
SaxonXMLTableNode.open() |
Copyright © 2019. All rights reserved.