MySQL 5.6.14 Source Code Document
|
#include <ha_ndbcluster_push.h>
Public Member Functions | |
ndb_pushed_join (const ndb_pushed_builder_ctx &builder_ctx, const NdbQueryDef *query_def) | |
bool | match_definition (int type, const NDB_INDEX_DATA *idx, bool needSorted) const |
NdbQuery * | make_query_instance (NdbTransaction *trans, const NdbQueryParamValue *keyFieldParams, uint paramCnt) const |
uint | get_operation_count () const |
uint | get_field_referrences_count () const |
const NdbQueryDef & | get_query_def () const |
TABLE * | get_table (uint i) const |
Static Public Attributes | |
static const uint | MAX_KEY_PART = MAX_KEY |
static const uint | MAX_REFERRED_FIELDS = 16 |
static const uint | MAX_LINKED_KEYS = MAX_KEY |
static const uint | MAX_PUSHED_OPERATIONS = MAX_TABLES |
This class represents a prepared pushed (N-way) join operation.
It might be instantiated multiple times whenever the query, or this subpart of the query, is being (re-)executed by ::createQuery() or it's wrapper method ha_ndbcluster::create_pushed_join().
Definition at line 88 of file ha_ndbcluster_push.h.
|
inline |
In a pushed join, fields in lookup keys and scan bounds may refer to result fields of table access operation that execute prior to the pushed join. This method returns the number of such references.
Definition at line 119 of file ha_ndbcluster_push.h.
|
inline |
Get the number of pushed table access operations.
Definition at line 111 of file ha_ndbcluster_push.h.
|
inline |
Get the table that is accessed by the i'th table access operation.
Definition at line 126 of file ha_ndbcluster_push.h.
NdbQuery* ndb_pushed_join::make_query_instance | ( | NdbTransaction * | trans, |
const NdbQueryParamValue * | keyFieldParams, | ||
uint | paramCnt | ||
) | const |
Create an executable instance of this defined query.
bool ndb_pushed_join::match_definition | ( | int | type, |
const NDB_INDEX_DATA * | idx, | ||
bool | needSorted | ||
) | const |
Check that this prepared pushed query matches the type of operation specified by the arguments.
|
static |
This is the maximal number of fields in the key of any pushed table access operation.
Definition at line 136 of file ha_ndbcluster_push.h.
|
static |
For each table access operation in a pushed join, this is the maximal number of key fields that may refer to the fields of the parent operation.
Definition at line 148 of file ha_ndbcluster_push.h.
|
static |
This is the maximal number of table access operations there can be in a single pushed join.
Definition at line 153 of file ha_ndbcluster_push.h.
|
static |
In a pushed join, fields in lookup keys and scan bounds may refer to result fields of table access operation that execute prior to the pushed join. This constant specifies the maximal number of such references for a query.
Definition at line 143 of file ha_ndbcluster_push.h.