1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-07-29 08:21:15 +03:00

MCOL-104 First pass of InfiniDB rename in code

This commit is contained in:
Andrew Hutchings
2019-08-12 09:41:28 +01:00
parent 7b006b6e74
commit 9d83b49fca
35 changed files with 170 additions and 170 deletions

8
README
View File

@ -1,9 +1,9 @@
This is MariaDB ColumnStore 1.2
MariaDB ColumnStore 1.2 is the GA version of MariaDB ColumnStore.
It is built by porting InfiniDB 4.6.7 on MariaDB 10.2 and adding entirely
This is MariaDB ColumnStore 1.4
MariaDB ColumnStore 1.4 is the GA version of MariaDB ColumnStore.
It is built by porting InfiniDB 4.6.7 on MariaDB and adding entirely
new features not found anywhere else.
MariaDB ColumnStore 1.2 is a GA.
MariaDB ColumnStore 1.4 is a Alpha.
Additional features will be pushed in future releases.
A few things to notice:

View File

@ -269,28 +269,28 @@ const CalpontSystemCatalog::TableName make_table(const string& s, const string&
return tn;
}
const CalpontSystemCatalog::TableAliasName make_aliastable(const string& s, const string& t, const string& a, const bool isInfiniDB)
const CalpontSystemCatalog::TableAliasName make_aliastable(const string& s, const string& t, const string& a, const bool isColumnStore)
{
CalpontSystemCatalog::TableAliasName tn;
tn.schema = s;
tn.table = t;
tn.alias = a;
tn.view = "";
tn.fIsInfiniDB = isInfiniDB;
tn.fisColumnStore = isColumnStore;
transform (tn.schema.begin(), tn.schema.end(), tn.schema.begin(), to_lower());
transform (tn.table.begin(), tn.table.end(), tn.table.begin(), to_lower());
transform (tn.alias.begin(), tn.alias.end(), tn.alias.begin(), to_lower());
return tn;
}
const CalpontSystemCatalog::TableAliasName make_aliasview(const string& s, const string& t, const string& a, const string& v, const bool isInfiniDB)
const CalpontSystemCatalog::TableAliasName make_aliasview(const string& s, const string& t, const string& a, const string& v, const bool isColumnStore)
{
CalpontSystemCatalog::TableAliasName tn;
tn.schema = s;
tn.table = t;
tn.alias = a;
tn.view = v;
tn.fIsInfiniDB = isInfiniDB;
tn.fisColumnStore = isColumnStore;
transform (tn.schema.begin(), tn.schema.end(), tn.schema.begin(), to_lower());
transform (tn.table.begin(), tn.table.end(), tn.table.begin(), to_lower());
transform (tn.alias.begin(), tn.alias.end(), tn.alias.begin(), to_lower());
@ -380,7 +380,7 @@ bool CalpontSystemCatalog::TableAliasName::operator<(const TableAliasName& rhs)
}
else if (view == rhs.view)
{
if (fIsInfiniDB < rhs.fIsInfiniDB)
if (fisColumnStore < rhs.fisColumnStore)
return true;
}
}
@ -396,7 +396,7 @@ void CalpontSystemCatalog::TableAliasName::serialize(messageqcpp::ByteStream& b)
b << table;
b << alias;
b << view;
b << static_cast<const ByteStream::doublebyte>(fIsInfiniDB);
b << static_cast<const ByteStream::doublebyte>(fisColumnStore);
}
void CalpontSystemCatalog::TableAliasName::unserialize(messageqcpp::ByteStream& b)
@ -405,7 +405,7 @@ void CalpontSystemCatalog::TableAliasName::unserialize(messageqcpp::ByteStream&
b >> table;
b >> alias;
b >> view;
b >> reinterpret_cast< ByteStream::doublebyte&>(fIsInfiniDB);
b >> reinterpret_cast< ByteStream::doublebyte&>(fisColumnStore);
}
/*static*/
@ -5649,7 +5649,7 @@ const string CalpontSystemCatalog::TableName::toString() const
ostream& operator<<(ostream& os, const CalpontSystemCatalog::TableAliasName& rhs)
{
os << rhs.schema << '.' << rhs.table << "(" << rhs.alias << "/" << rhs.view
<< ") engineType=" << (rhs.fIsInfiniDB ? "ColumnStore" : "ForeignEngine");
<< ") engineType=" << (rhs.fisColumnStore ? "ColumnStore" : "ForeignEngine");
return os;
}

View File

@ -429,16 +429,16 @@ public:
*/
struct TableAliasName
{
TableAliasName (): fIsInfiniDB (true) {}
TableAliasName (): fisColumnStore (true) {}
TableAliasName (std::string sch, std::string tb, std::string al) :
schema (sch), table (tb), alias (al), fIsInfiniDB(true) {}
schema (sch), table (tb), alias (al), fisColumnStore(true) {}
TableAliasName (std::string sch, std::string tb, std::string al, std::string v) :
schema (sch), table (tb), alias (al), view(v), fIsInfiniDB(true) {}
schema (sch), table (tb), alias (al), view(v), fisColumnStore(true) {}
std::string schema;
std::string table;
std::string alias;
std::string view;
bool fIsInfiniDB;
bool fisColumnStore;
void clear();
bool operator<(const TableAliasName& rhs) const;
bool operator>=(const TableAliasName& rhs) const
@ -451,7 +451,7 @@ public:
table == rhs.table &&
alias == rhs.alias &&
view == rhs.view &&
fIsInfiniDB == rhs.fIsInfiniDB);
fisColumnStore == rhs.fisColumnStore);
}
bool operator!=(const TableAliasName& rhs) const
{
@ -962,8 +962,8 @@ const CalpontSystemCatalog::TableColName make_tcn(const std::string& s, const st
*/
const CalpontSystemCatalog::TableName make_table(const std::string& s, const std::string& t);
const CalpontSystemCatalog::TableAliasName make_aliastable(const std::string& s, const std::string& t, const std::string& a,
const bool fIsInfiniDB = true);
const CalpontSystemCatalog::TableAliasName make_aliasview(const std::string& s, const std::string& t, const std::string& a, const std::string& v, const bool fIsInfiniDB = true);
const bool fisColumnStore = true);
const CalpontSystemCatalog::TableAliasName make_aliasview(const std::string& s, const std::string& t, const std::string& a, const std::string& v, const bool fisColumnStore = true);
/** convenience function to determine if column type is a char
* type

View File

@ -72,10 +72,10 @@ PseudoColumn::PseudoColumn(const string& schemaName,
PseudoColumn::PseudoColumn(const string& schemaName,
const string& tableName,
const string& columnName,
const bool isInfiniDB,
const bool isColumnStore,
const uint32_t pseudoType,
const uint32_t sessionID):
SimpleColumn(schemaName, tableName, columnName, isInfiniDB, sessionID),
SimpleColumn(schemaName, tableName, columnName, isColumnStore, sessionID),
fPseudoType(pseudoType)
{
adjustResultType();
@ -122,7 +122,7 @@ PseudoColumn& PseudoColumn::operator=(const PseudoColumn& rhs)
fData = rhs.data();
fSequence = rhs.sequence();
fDistinct = rhs.distinct();
fIsInfiniDB = rhs.isInfiniDB();
fisColumnStore = rhs.isColumnStore();
fPseudoType = rhs.pseudoType();
}
@ -155,7 +155,7 @@ const string PseudoColumn::toString() const
<< cardinality() << '/'
<< joinInfo() << '/'
<< colSource() << '/'
<< (isInfiniDB() ? "ColumnStore" : "ForeignEngine") << endl;
<< (isColumnStore() ? "ColumnStore" : "ForeignEngine") << endl;
output << "Pseudotype=" << fPseudoType << endl;
return output.str();

View File

@ -78,7 +78,7 @@ public:
PseudoColumn(const std::string& schema,
const std::string& table,
const std::string& col,
const bool isInfiniDB,
const bool isColumnStore,
const uint32_t pseudoType,
const uint32_t sessionID = 0);
PseudoColumn(const SimpleColumn& rhs, const uint32_t pseudoType, const uint32_t sessionID = 0);

View File

@ -139,7 +139,7 @@ ParseTree* replaceRefCol(ParseTree*& n, CalpontSelectExecutionPlan::ReturnedColu
SimpleColumn::SimpleColumn():
ReturnedColumn(),
fOid (0),
fIsInfiniDB (true)
fisColumnStore (true)
{
fDistinct = false;
}
@ -148,7 +148,7 @@ SimpleColumn::SimpleColumn(const string& token, const uint32_t sessionID):
ReturnedColumn(sessionID),
fOid (0),
fData(token),
fIsInfiniDB (true)
fisColumnStore (true)
{
parse (token);
setOID();
@ -163,7 +163,7 @@ SimpleColumn::SimpleColumn(const string& schemaName,
fSchemaName (schemaName),
fTableName (tableName),
fColumnName (columnName),
fIsInfiniDB (true)
fisColumnStore (true)
{
setOID();
fDistinct = false;
@ -172,15 +172,15 @@ SimpleColumn::SimpleColumn(const string& schemaName,
SimpleColumn::SimpleColumn(const string& schemaName,
const string& tableName,
const string& columnName,
const bool isInfiniDB,
const bool isColumnStore,
const uint32_t sessionID):
ReturnedColumn(sessionID),
fSchemaName (schemaName),
fTableName (tableName),
fColumnName (columnName),
fIsInfiniDB (isInfiniDB)
fisColumnStore (isColumnStore)
{
if (isInfiniDB)
if (isColumnStore)
setOID();
fDistinct = false;
@ -197,7 +197,7 @@ SimpleColumn::SimpleColumn (const SimpleColumn& rhs, const uint32_t sessionID):
fIndexName (rhs.indexName()),
fViewName (rhs.viewName()),
fTimeZone (rhs.timeZone()),
fIsInfiniDB (rhs.isInfiniDB())
fisColumnStore (rhs.isColumnStore())
{
}
@ -234,7 +234,7 @@ SimpleColumn& SimpleColumn::operator=(const SimpleColumn& rhs)
fData = rhs.data();
fSequence = rhs.sequence();
fDistinct = rhs.distinct();
fIsInfiniDB = rhs.isInfiniDB();
fisColumnStore = rhs.isColumnStore();
}
return *this;
@ -264,7 +264,7 @@ const string SimpleColumn::toString() const
<< cardinality() << '/'
<< joinInfo() << '/'
<< colSource() << '/'
<< (isInfiniDB() ? "ColumnStore" : "ForeignEngine") << '/'
<< (isColumnStore() ? "ColumnStore" : "ForeignEngine") << '/'
<< colPosition() << endl;
return output.str();
@ -352,7 +352,7 @@ void SimpleColumn::serialize(messageqcpp::ByteStream& b) const
b << fData;
b << fTableAlias;
b << (uint32_t) fSequence;
b << static_cast<const ByteStream::doublebyte>(fIsInfiniDB);
b << static_cast<const ByteStream::doublebyte>(fisColumnStore);
}
void SimpleColumn::unserialize(messageqcpp::ByteStream& b)
@ -369,7 +369,7 @@ void SimpleColumn::unserialize(messageqcpp::ByteStream& b)
b >> fData;
b >> fTableAlias;
b >> (uint32_t&) fSequence;
b >> reinterpret_cast< ByteStream::doublebyte&>(fIsInfiniDB);
b >> reinterpret_cast< ByteStream::doublebyte&>(fisColumnStore);
}
bool SimpleColumn::operator==(const SimpleColumn& t) const
@ -412,7 +412,7 @@ bool SimpleColumn::operator==(const SimpleColumn& t) const
if (fReturnAll != t.fReturnAll)
return false;
if (fIsInfiniDB != t.fIsInfiniDB)
if (fisColumnStore != t.fisColumnStore)
return false;
return true;
@ -452,7 +452,7 @@ bool SimpleColumn::sameColumn(const ReturnedColumn* rc) const
fColumnName.compare(sc->columnName()) == 0 &&
fTableAlias.compare(sc->tableAlias()) == 0 &&
fViewName.compare(sc->viewName()) == 0 &&
fIsInfiniDB == sc->isInfiniDB());
fisColumnStore == sc->isColumnStore());
}
void SimpleColumn::setDerivedTable()

View File

@ -70,7 +70,7 @@ public:
SimpleColumn(const std::string& schema,
const std::string& table,
const std::string& col,
const bool isInfiniDB,
const bool isColumnStore,
const uint32_t sessionID = 0);
SimpleColumn(const SimpleColumn& rhs, const uint32_t sessionID = 0);
@ -160,13 +160,13 @@ public:
{
fTimeZone = timeZone;
}
inline const bool isInfiniDB() const
inline const bool isColumnStore() const
{
return fIsInfiniDB;
return fisColumnStore;
}
inline void isInfiniDB(const bool isInfiniDB)
inline void isColumnStore(const bool isColumnStore)
{
fIsInfiniDB = isInfiniDB;
fisColumnStore = isColumnStore;
}
/** return a copy of this pointer
@ -261,7 +261,7 @@ protected:
// if belong to view, view name is non-empty
std::string fViewName;
std::string fTimeZone;
bool fIsInfiniDB;
bool fisColumnStore;
/** @brief parse SimpleColumn text
*

View File

@ -60,7 +60,7 @@ public:
SimpleColumn_Decimal(const std::string& schema,
const std::string& table,
const std::string& col,
const bool isInfiniDB,
const bool isColumnStore,
const uint32_t sessionID = 0);
SimpleColumn_Decimal(const SimpleColumn& rhs, const uint32_t sessionID = 0);
@ -107,9 +107,9 @@ template<int len>
SimpleColumn_Decimal<len>::SimpleColumn_Decimal(const std::string& schema,
const std::string& table,
const std::string& col,
const bool isInfiniDB,
const bool isColumnStore,
const uint32_t sessionID) :
SimpleColumn(schema, table, col, isInfiniDB, sessionID)
SimpleColumn(schema, table, col, isColumnStore, sessionID)
{
setNullVal();
}

View File

@ -58,7 +58,7 @@ public:
SimpleColumn_INT(const std::string& schema,
const std::string& table,
const std::string& col,
const bool isInfiniDB,
const bool isColumnStore,
const uint32_t sessionID = 0);
SimpleColumn_INT(const SimpleColumn& rhs, const uint32_t sessionID = 0);
@ -106,9 +106,9 @@ template<int len>
SimpleColumn_INT<len>::SimpleColumn_INT(const std::string& schema,
const std::string& table,
const std::string& col,
const bool isInfiniDB,
const bool isColumnStore,
const uint32_t sessionID) :
SimpleColumn(schema, table, col, isInfiniDB, sessionID)
SimpleColumn(schema, table, col, isColumnStore, sessionID)
{
setNullVal();
}

View File

@ -58,7 +58,7 @@ public:
SimpleColumn_UINT(const std::string& schema,
const std::string& table,
const std::string& col,
const bool isInfiniDB,
const bool isColumnStore,
const uint32_t sessionID = 0);
SimpleColumn_UINT(const SimpleColumn& rhs, const uint32_t sessionID = 0);
@ -106,9 +106,9 @@ template<int len>
SimpleColumn_UINT<len>::SimpleColumn_UINT(const std::string& schema,
const std::string& table,
const std::string& col,
const bool isInfiniDB,
const bool isColumnStore,
const uint32_t sessionID) :
SimpleColumn(schema, table, col, isInfiniDB, sessionID)
SimpleColumn(schema, table, col, isColumnStore, sessionID)
{
setNullVal();
}

View File

@ -387,7 +387,7 @@ void ExpressionStep::populateColumnInfo(SimpleColumn* sc, JobInfo& jobInfo)
sc->oid(tblOid + 1 + sc->colPosition());
ct = sc->resultType();
}
else if (sc->isInfiniDB() == false)
else if (sc->isColumnStore() == false)
{
ct = sc->colType();
}
@ -515,7 +515,7 @@ void ExpressionStep::updateInputIndex(map<uint32_t, uint32_t>& indexMap, const J
{
ct = sc->resultType();
}
else if (sc->isInfiniDB() == false)
else if (sc->isColumnStore() == false)
{
ct = sc->colType();
}

View File

@ -378,7 +378,7 @@ CalpontSystemCatalog::OID tableOid(const SimpleColumn* sc, boost::shared_ptr<Cal
if (sc->schemaName().empty())
return execplan::CNX_VTABLE_ID;
if (sc->isInfiniDB() == false)
if (sc->isColumnStore() == false)
return 0;
CalpontSystemCatalog::ROPair p = cat->tableRID(make_table(sc->schemaName(),
@ -395,7 +395,7 @@ uint32_t getTupleKey(const JobInfo& jobInfo,
return getTupleKey_(jobInfo, sc->oid(), sc->columnName(), extractTableAlias(sc),
sc->schemaName(), sc->viewName(),
((sc->joinInfo() & execplan::JOIN_CORRELATED) != 0),
pseudoType, (sc->isInfiniDB() ? 0 : 1));
pseudoType, (sc->isColumnStore() ? 0 : 1));
}
@ -503,7 +503,7 @@ uint32_t makeTableKey(JobInfo& jobInfo, const execplan::SimpleColumn* sc)
{
CalpontSystemCatalog::OID o = tableOid(sc, jobInfo.csc);
return uniqTupleKey(jobInfo, o, o, "", "", sc->tableName(), extractTableAlias(sc),
sc->schemaName(), sc->viewName(), 0, (sc->isInfiniDB() ? 0 : 1),
sc->schemaName(), sc->viewName(), 0, (sc->isColumnStore() ? 0 : 1),
((sc->joinInfo() & execplan::JOIN_CORRELATED) != 0));
}
@ -561,7 +561,7 @@ TupleInfo setTupleInfo(const execplan::CalpontSystemCatalog::ColType& ct,
return setTupleInfo_(ct, col_oid, jobInfo, tbl_oid, sc->columnName(), sc->alias(),
sc->schemaName(), sc->tableName(), alias, sc->viewName(),
((sc->joinInfo() & execplan::JOIN_CORRELATED) != 0),
pseudoType, (sc->isInfiniDB() ? 0 : 1));
pseudoType, (sc->isColumnStore() ? 0 : 1));
}

View File

@ -649,10 +649,10 @@ const JobStepVector doColFilter(const SimpleColumn* sc1, const SimpleColumn* sc2
//XXX use this before connector sets colType in sc correctly.
// type of pseudo column is set by connector
if (!sc1->schemaName().empty() && sc1->isInfiniDB() && !pc1)
if (!sc1->schemaName().empty() && sc1->isColumnStore() && !pc1)
ct1 = jobInfo.csc->colType(sc1->oid());
if (!sc2->schemaName().empty() && sc2->isInfiniDB() && !pc2)
if (!sc2->schemaName().empty() && sc2->isColumnStore() && !pc2)
ct2 = jobInfo.csc->colType(sc2->oid());
//X
@ -1074,10 +1074,10 @@ const JobStepVector doJoin(
//XXX use this before connector sets colType in sc correctly.
// type of pseudo column is set by connector
if (!sc1->schemaName().empty() && sc1->isInfiniDB() && !pc1)
if (!sc1->schemaName().empty() && sc1->isColumnStore() && !pc1)
ct1 = jobInfo.csc->colType(sc1->oid());
if (!sc2->schemaName().empty() && sc2->isInfiniDB() && !pc2)
if (!sc2->schemaName().empty() && sc2->isColumnStore() && !pc2)
ct2 = jobInfo.csc->colType(sc2->oid());
//X
@ -1341,7 +1341,7 @@ const JobStepVector doSemiJoin(const SimpleColumn* sc, const ReturnedColumn* rc,
//XXX use this before connector sets colType in sc correctly.
// type of pseudo column is set by connector
if (!sc->schemaName().empty() && sc->isInfiniDB() && !pc1)
if (!sc->schemaName().empty() && sc->isColumnStore() && !pc1)
ct1 = jobInfo.csc->colType(sc->oid());
//X
@ -1650,7 +1650,7 @@ const JobStepVector doSimpleFilter(SimpleFilter* sf, JobInfo& jobInfo)
//XXX use this before connector sets colType in sc correctly.
// type of pseudo column is set by connector
if (!sc->schemaName().empty() && sc->isInfiniDB() && !pc)
if (!sc->schemaName().empty() && sc->isColumnStore() && !pc)
ct = jobInfo.csc->colType(sc->oid());
//X
@ -1902,7 +1902,7 @@ const JobStepVector doSimpleFilter(SimpleFilter* sf, JobInfo& jobInfo)
else
pcs = new PseudoColStep(sc->oid(), tbl_oid, pc->pseudoType(), ct, jobInfo);
if (sc->isInfiniDB())
if (sc->isColumnStore())
pcs->addFilter(cop, value, rf);
pcs->alias(alias);
@ -2339,7 +2339,7 @@ const JobStepVector doOuterJoinOnFilter(OuterJoinOnFilter* oj, JobInfo& jobInfo)
// MCOL-1182 if we are doing a join between a cross engine
// step and a constant then keep the filter for the cross
// engine step instead of deleting it further down.
if (!sc->isInfiniDB())
if (!sc->isColumnStore())
{
keepFilters = true;
}
@ -2724,7 +2724,7 @@ const JobStepVector doConstantFilter(const ConstantFilter* cf, JobInfo& jobInfo)
//XXX use this before connector sets colType in sc correctly.
// type of pseudo column is set by connector
if (!sc->schemaName().empty() && sc->isInfiniDB() && !pc)
if (!sc->schemaName().empty() && sc->isColumnStore() && !pc)
ct = jobInfo.csc->colType(sc->oid());
//X
@ -2950,7 +2950,7 @@ const JobStepVector doConstantFilter(const ConstantFilter* cf, JobInfo& jobInfo)
pcs->name(sc->columnName());
pcs->schema(sc->schemaName());
if (sc->isInfiniDB())
if (sc->isColumnStore())
{
if (op)
pcs->setBOP(bop2num(op));
@ -3001,7 +3001,7 @@ const JobStepVector doConstantFilter(const ConstantFilter* cf, JobInfo& jobInfo)
//XXX use this before connector sets colType in sc correctly.
CalpontSystemCatalog::ColType ct = sc->colType();
if (!sc->schemaName().empty() && sc->isInfiniDB() && !pc)
if (!sc->schemaName().empty() && sc->isColumnStore() && !pc)
ct = jobInfo.csc->colType(sc->oid());
TupleInfo ti(setTupleInfo(ct, sc->oid(), jobInfo, tblOid, sc.get(), alias));

View File

@ -802,7 +802,7 @@ void addOrderByAndLimit(CalpontSelectExecutionPlan* csep, JobInfo& jobInfo)
//XXX use this before connector sets colType in sc correctly.
// type of pseudo column is set by connector
if (sc->isInfiniDB() && !(dynamic_cast<PseudoColumn*>(sc)))
if (sc->isColumnStore() && !(dynamic_cast<PseudoColumn*>(sc)))
ct = jobInfo.csc->colType(sc->oid());
//X

View File

@ -127,7 +127,7 @@ void projectSimpleColumn(const SimpleColumn* sc, JobStepVector& jsv, JobInfo& jo
//XXX use this before connector sets colType in sc correctly.
// type of pseudo column is set by connector
if (sc->isInfiniDB() && !pc)
if (sc->isColumnStore() && !pc)
ct = jobInfo.csc->colType(sc->oid());
//X
@ -708,7 +708,7 @@ const JobStepVector doAggProject(const CalpontSelectExecutionPlan* csep, JobInfo
ct = sc->colType();
//XXX use this before connector sets colType in sc correctly.
if (sc->isInfiniDB() && dynamic_cast<const PseudoColumn*>(sc) == NULL)
if (sc->isColumnStore() && dynamic_cast<const PseudoColumn*>(sc) == NULL)
ct = jobInfo.csc->colType(sc->oid());
//X
@ -994,7 +994,7 @@ const JobStepVector doAggProject(const CalpontSelectExecutionPlan* csep, JobInfo
ct = sc->colType();
//XXX use this before connector sets colType in sc correctly.
if (sc->isInfiniDB() && dynamic_cast<const PseudoColumn*>(sc) == NULL)
if (sc->isColumnStore() && dynamic_cast<const PseudoColumn*>(sc) == NULL)
ct = jobInfo.csc->colType(sc->oid());
//X
@ -1142,7 +1142,7 @@ const JobStepVector doAggProject(const CalpontSelectExecutionPlan* csep, JobInfo
ct = sc->colType();
//XXX use this before connector sets colType in sc correctly.
if (sc->isInfiniDB() && dynamic_cast<const PseudoColumn*>(sc) == NULL)
if (sc->isColumnStore() && dynamic_cast<const PseudoColumn*>(sc) == NULL)
ct = jobInfo.csc->colType(sc->oid());
//X
@ -1623,7 +1623,7 @@ void parseExecutionPlan(CalpontSelectExecutionPlan* csep, JobInfo& jobInfo,
CalpontSystemCatalog::ColType ct = sc->colType();
//XXX use this before connector sets colType in sc correctly.
if (sc->isInfiniDB() && dynamic_cast<const PseudoColumn*>(sc) == NULL)
if (sc->isColumnStore() && dynamic_cast<const PseudoColumn*>(sc) == NULL)
ct = jobInfo.csc->colType(sc->oid());
//X
@ -1759,7 +1759,7 @@ void makeJobSteps(CalpontSelectExecutionPlan* csep, JobInfo& jobInfo,
if (it->schema.empty())
oid = doFromSubquery(fromSubquery[i++].get(), it->alias, it->view, jobInfo);
else if (it->fIsInfiniDB)
else if (it->fisColumnStore)
oid = jobInfo.csc->tableRID(*it).objnum;
else
oid = 0;

View File

@ -71,7 +71,7 @@ pthread_mutex_t calpont_mutex;
Function we use in the creation of our hash to get key.
*/
static uchar* calpont_get_key(INFINIDB_SHARE* share, size_t* length,
static uchar* calpont_get_key(COLUMNSTORE_SHARE* share, size_t* length,
my_bool not_used __attribute__((unused)))
{
*length = share->table_name_length;

View File

@ -25,7 +25,7 @@ extern handlerton* calpont_hton;
extern handlerton* mcs_hton;
/** @brief
INFINIDB_SHARE is a structure that will be shared among all open handlers.
COLUMNSTORE_SHARE is a structure that will be shared among all open handlers.
This example implements the minimum of what you will probably need.
*/
typedef struct st_calpont_share
@ -34,7 +34,7 @@ typedef struct st_calpont_share
uint32_t table_name_length, use_count;
pthread_mutex_t mutex;
THR_LOCK lock;
} INFINIDB_SHARE;
} COLUMNSTORE_SHARE;
/** @brief
Class definition for the storage engine
@ -42,7 +42,7 @@ typedef struct st_calpont_share
class ha_calpont: public handler
{
THR_LOCK_DATA lock; ///< MySQL lock
INFINIDB_SHARE* share; ///< Shared lock info
COLUMNSTORE_SHARE* share; ///< Shared lock info
ulonglong int_table_flags;
public:

View File

@ -2370,7 +2370,7 @@ SimpleColumn* buildSimpleColFromDerivedTable(gp_walk_info& gwi, Item_field* ifp)
sc->hasAggregate(cols[j]->hasAggregate());
if (col)
sc->isInfiniDB(col->isInfiniDB());
sc->isColumnStore(col->isColumnStore());
// @bug5634, @bug5635. mark used derived col on derived table.
// outer join inner table filter can not be moved in
@ -2823,14 +2823,14 @@ SimpleColumn* getSmallestColumn(boost::shared_ptr<CalpontSystemCatalog> csc,
}
// check engine type
if (!tan.fIsInfiniDB)
if (!tan.fisColumnStore)
{
// get the first column to project. @todo optimization to get the smallest one for foreign engine.
Field* field = *(table->field);
SimpleColumn* sc = new SimpleColumn(table->s->db.str, table->s->table_name.str, field->field_name.str, tan.fIsInfiniDB, gwi.sessionid);
SimpleColumn* sc = new SimpleColumn(table->s->db.str, table->s->table_name.str, field->field_name.str, tan.fisColumnStore, gwi.sessionid);
string alias(table->alias.ptr());
sc->tableAlias(lower(alias));
sc->isInfiniDB(false);
sc->isColumnStore(false);
sc->timeZone(gwi.thd->variables.time_zone->get_name()->ptr());
sc->resultType(fieldType_MysqlToIDB(field));
sc->oid(field->field_index + 1);
@ -4182,16 +4182,16 @@ FunctionColumn* buildCaseFunction(Item_func* item, gp_walk_info& gwi, bool& nonS
ConstantColumn* buildDecimalColumn(Item* item, gp_walk_info& gwi)
{
Item_decimal* idp = (Item_decimal*)item;
IDB_Decimal infinidb_decimal;
IDB_Decimal columnstore_decimal;
String val, *str = item->val_str(&val);
string valStr;
valStr.assign(str->ptr(), str->length());
ostringstream infinidb_decimal_val;
ostringstream columnstore_decimal_val;
uint32_t i = 0;
if (str->ptr()[0] == '+' || str->ptr()[0] == '-')
{
infinidb_decimal_val << str->ptr()[0];
columnstore_decimal_val << str->ptr()[0];
i = 1;
}
@ -4200,22 +4200,22 @@ ConstantColumn* buildDecimalColumn(Item* item, gp_walk_info& gwi)
if (str->ptr()[i] == '.')
continue;
infinidb_decimal_val << str->ptr()[i];
columnstore_decimal_val << str->ptr()[i];
}
infinidb_decimal.value = strtoll(infinidb_decimal_val.str().c_str(), 0, 10);
columnstore_decimal.value = strtoll(columnstore_decimal_val.str().c_str(), 0, 10);
if (gwi.internalDecimalScale >= 0 && idp->decimals > (uint)gwi.internalDecimalScale)
{
infinidb_decimal.scale = gwi.internalDecimalScale;
double val = (double)(infinidb_decimal.value / pow((double)10, idp->decimals - gwi.internalDecimalScale));
infinidb_decimal.value = (int64_t)(val > 0 ? val + 0.5 : val - 0.5);
columnstore_decimal.scale = gwi.internalDecimalScale;
double val = (double)(columnstore_decimal.value / pow((double)10, idp->decimals - gwi.internalDecimalScale));
columnstore_decimal.value = (int64_t)(val > 0 ? val + 0.5 : val - 0.5);
}
else
infinidb_decimal.scale = idp->decimals;
columnstore_decimal.scale = idp->decimals;
infinidb_decimal.precision = idp->max_length - idp->decimals;
ConstantColumn* cc = new ConstantColumn(valStr, infinidb_decimal);
columnstore_decimal.precision = idp->max_length - idp->decimals;
ConstantColumn* cc = new ConstantColumn(valStr, columnstore_decimal);
cc->timeZone(gwi.thd->variables.time_zone->get_name()->ptr());
return cc;
}
@ -4239,18 +4239,18 @@ SimpleColumn* buildSimpleColumn(Item_field* ifp, gp_walk_info& gwi)
return buildSimpleColFromDerivedTable(gwi, ifp);
CalpontSystemCatalog::ColType ct;
bool infiniDB = true;
bool columnStore = true;
try
{
// check foreign engine
if (ifp->cached_table && ifp->cached_table->table)
infiniDB = isMCSTable(ifp->cached_table->table);
columnStore = isMCSTable(ifp->cached_table->table);
// @bug4509. ifp->cached_table could be null for myisam sometimes
else if (ifp->field && ifp->field->table)
infiniDB = isMCSTable(ifp->field->table);
columnStore = isMCSTable(ifp->field->table);
if (infiniDB)
if (columnStore)
{
ct = gwi.csc->colType(
gwi.csc->lookupOID(make_tcn(ifp->db_name, bestTableName(ifp), ifp->field_name.str)));
@ -4273,10 +4273,10 @@ SimpleColumn* buildSimpleColumn(Item_field* ifp, gp_walk_info& gwi)
{
case CalpontSystemCatalog::TINYINT:
if (ct.scale == 0)
sc = new SimpleColumn_INT<1>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, infiniDB, gwi.sessionid);
sc = new SimpleColumn_INT<1>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, columnStore, gwi.sessionid);
else
{
sc = new SimpleColumn_Decimal<1>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, infiniDB, gwi.sessionid);
sc = new SimpleColumn_Decimal<1>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, columnStore, gwi.sessionid);
ct.colDataType = CalpontSystemCatalog::DECIMAL;
}
@ -4284,10 +4284,10 @@ SimpleColumn* buildSimpleColumn(Item_field* ifp, gp_walk_info& gwi)
case CalpontSystemCatalog::SMALLINT:
if (ct.scale == 0)
sc = new SimpleColumn_INT<2>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, infiniDB, gwi.sessionid);
sc = new SimpleColumn_INT<2>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, columnStore, gwi.sessionid);
else
{
sc = new SimpleColumn_Decimal<2>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, infiniDB, gwi.sessionid);
sc = new SimpleColumn_Decimal<2>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, columnStore, gwi.sessionid);
ct.colDataType = CalpontSystemCatalog::DECIMAL;
}
@ -4296,10 +4296,10 @@ SimpleColumn* buildSimpleColumn(Item_field* ifp, gp_walk_info& gwi)
case CalpontSystemCatalog::INT:
case CalpontSystemCatalog::MEDINT:
if (ct.scale == 0)
sc = new SimpleColumn_INT<4>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, infiniDB, gwi.sessionid);
sc = new SimpleColumn_INT<4>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, columnStore, gwi.sessionid);
else
{
sc = new SimpleColumn_Decimal<4>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, infiniDB, gwi.sessionid);
sc = new SimpleColumn_Decimal<4>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, columnStore, gwi.sessionid);
ct.colDataType = CalpontSystemCatalog::DECIMAL;
}
@ -4307,34 +4307,34 @@ SimpleColumn* buildSimpleColumn(Item_field* ifp, gp_walk_info& gwi)
case CalpontSystemCatalog::BIGINT:
if (ct.scale == 0)
sc = new SimpleColumn_INT<8>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, infiniDB, gwi.sessionid);
sc = new SimpleColumn_INT<8>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, columnStore, gwi.sessionid);
else
{
sc = new SimpleColumn_Decimal<8>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, infiniDB, gwi.sessionid);
sc = new SimpleColumn_Decimal<8>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, columnStore, gwi.sessionid);
ct.colDataType = CalpontSystemCatalog::DECIMAL;
}
break;
case CalpontSystemCatalog::UTINYINT:
sc = new SimpleColumn_UINT<1>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, infiniDB, gwi.sessionid);
sc = new SimpleColumn_UINT<1>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, columnStore, gwi.sessionid);
break;
case CalpontSystemCatalog::USMALLINT:
sc = new SimpleColumn_UINT<2>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, infiniDB, gwi.sessionid);
sc = new SimpleColumn_UINT<2>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, columnStore, gwi.sessionid);
break;
case CalpontSystemCatalog::UINT:
case CalpontSystemCatalog::UMEDINT:
sc = new SimpleColumn_UINT<4>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, infiniDB, gwi.sessionid);
sc = new SimpleColumn_UINT<4>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, columnStore, gwi.sessionid);
break;
case CalpontSystemCatalog::UBIGINT:
sc = new SimpleColumn_UINT<8>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, infiniDB, gwi.sessionid);
sc = new SimpleColumn_UINT<8>(ifp->db_name, bestTableName(ifp), ifp->field_name.str, columnStore, gwi.sessionid);
break;
default:
sc = new SimpleColumn(ifp->db_name, bestTableName(ifp), ifp->field_name.str, infiniDB, gwi.sessionid);
sc = new SimpleColumn(ifp->db_name, bestTableName(ifp), ifp->field_name.str, columnStore, gwi.sessionid);
}
sc->resultType(ct);
@ -4352,10 +4352,10 @@ SimpleColumn* buildSimpleColumn(Item_field* ifp, gp_walk_info& gwi)
sc->viewName(lower(getViewName(ifp->cached_table)));
sc->alias(ifp->name.str);
sc->isInfiniDB(infiniDB);
sc->isColumnStore(columnStore);
sc->timeZone(gwi.thd->variables.time_zone->get_name()->ptr());
if (!infiniDB && ifp->field)
if (!columnStore && ifp->field)
sc->oid(ifp->field->field_index + 1); // ExeMgr requires offset started from 1
if (ifp->depended_from)
@ -4584,7 +4584,7 @@ ReturnedColumn* buildAggregateColumn(Item* item, gp_walk_info& gwi)
parm.reset(sc);
gwi.columnMap.insert(CalpontSelectExecutionPlan::ColumnMap::value_type(string(ifp->field_name.str), parm));
TABLE_LIST* tmp = (ifp->cached_table ? ifp->cached_table : 0);
gwi.tableMap[make_aliastable(sc->schemaName(), sc->tableName(), sc->tableAlias(), sc->isInfiniDB())] = make_pair(1, tmp);
gwi.tableMap[make_aliastable(sc->schemaName(), sc->tableName(), sc->tableAlias(), sc->isColumnStore())] = make_pair(1, tmp);
break;
}
@ -5084,7 +5084,7 @@ void gp_walk(const Item* item, void* arg)
if (!((scp->joinInfo() & JOIN_CORRELATED) || scp->colType().colDataType == CalpontSystemCatalog::VARBINARY))
{
TABLE_LIST* tmp = (ifp->cached_table ? ifp->cached_table : 0);
gwip->tableMap[make_aliastable(scp->schemaName(), scp->tableName(), scp->tableAlias(), scp->isInfiniDB())] =
gwip->tableMap[make_aliastable(scp->schemaName(), scp->tableName(), scp->tableAlias(), scp->isColumnStore())] =
make_pair(1, tmp);
}
}
@ -6132,10 +6132,10 @@ int getSelectPlan(gp_walk_info& gwi, SELECT_LEX& select_lex,
else
{
// check foreign engine tables
bool infiniDB = (table_ptr->table ? isMCSTable(table_ptr->table) : true);
bool columnStore = (table_ptr->table ? isMCSTable(table_ptr->table) : true);
// trigger system catalog cache
if (infiniDB)
if (columnStore)
csc->columnRIDs(make_table(table_ptr->db.str, table_ptr->table_name.str), true);
string table_name = table_ptr->table_name.str;
@ -6144,9 +6144,9 @@ int getSelectPlan(gp_walk_info& gwi, SELECT_LEX& select_lex,
if (table_ptr->db.length && strcmp(table_ptr->db.str, "information_schema") == 0)
table_name = (table_ptr->schema_table_name.length ? table_ptr->schema_table_name.str : table_ptr->alias.str);
CalpontSystemCatalog::TableAliasName tn = make_aliasview(table_ptr->db.str, table_name, table_ptr->alias.str, viewName, infiniDB);
CalpontSystemCatalog::TableAliasName tn = make_aliasview(table_ptr->db.str, table_name, table_ptr->alias.str, viewName, columnStore);
gwi.tbList.push_back(tn);
CalpontSystemCatalog::TableAliasName tan = make_aliastable(table_ptr->db.str, table_name, table_ptr->alias.str, infiniDB);
CalpontSystemCatalog::TableAliasName tan = make_aliastable(table_ptr->db.str, table_name, table_ptr->alias.str, columnStore);
gwi.tableMap[tan] = make_pair(0, table_ptr);
#ifdef DEBUG_WALK_COND
cerr << tn << endl;
@ -6523,7 +6523,7 @@ int getSelectPlan(gp_walk_info& gwi, SELECT_LEX& select_lex,
if (ifp->cached_table)
tmp = ifp->cached_table;
gwi.tableMap[make_aliastable(sc->schemaName(), sc->tableName(), sc->tableAlias(), sc->isInfiniDB())] =
gwi.tableMap[make_aliastable(sc->schemaName(), sc->tableName(), sc->tableAlias(), sc->isColumnStore())] =
make_pair(1, tmp);
}
else
@ -7090,7 +7090,7 @@ int getSelectPlan(gp_walk_info& gwi, SELECT_LEX& select_lex,
string fullname;
fullname = str.c_ptr();
TABLE_LIST* tmp = (funcFieldVec[i]->cached_table ? funcFieldVec[i]->cached_table : 0);
gwi.tableMap[make_aliastable(sc->schemaName(), sc->tableName(), sc->tableAlias(), sc->isInfiniDB())] =
gwi.tableMap[make_aliastable(sc->schemaName(), sc->tableName(), sc->tableAlias(), sc->isColumnStore())] =
make_pair(1, tmp);
}
}
@ -7630,7 +7630,7 @@ int getSelectPlan(gp_walk_info& gwi, SELECT_LEX& select_lex,
gwi.returnedCols.push_back(srcp);
gwi.columnMap.insert(CalpontSelectExecutionPlan::ColumnMap::value_type(string(fieldVec[i]->field_name.str), srcp));
TABLE_LIST* tmp = (fieldVec[i]->cached_table ? fieldVec[i]->cached_table : 0);
gwi.tableMap[make_aliastable(sc->schemaName(), sc->tableName(), sc->tableAlias(), sc->isInfiniDB())] =
gwi.tableMap[make_aliastable(sc->schemaName(), sc->tableName(), sc->tableAlias(), sc->isColumnStore())] =
make_pair(1, tmp);
}
}
@ -8367,10 +8367,10 @@ int getGroupPlan(gp_walk_info& gwi, SELECT_LEX& select_lex, SCSEP& csep, cal_gro
else
{
// check foreign engine tables
bool infiniDB = (table_ptr->table ? isMCSTable(table_ptr->table) : true);
bool columnStore = (table_ptr->table ? isMCSTable(table_ptr->table) : true);
// trigger system catalog cache
if (infiniDB)
if (columnStore)
csc->columnRIDs(make_table(table_ptr->db.str, table_ptr->table_name.str), true);
string table_name = table_ptr->table_name.str;
@ -8379,9 +8379,9 @@ int getGroupPlan(gp_walk_info& gwi, SELECT_LEX& select_lex, SCSEP& csep, cal_gro
if (table_ptr->db.length && strcmp(table_ptr->db.str, "information_schema") == 0)
table_name = (table_ptr->schema_table_name.length ? table_ptr->schema_table_name.str : table_ptr->alias.str);
CalpontSystemCatalog::TableAliasName tn = make_aliasview(table_ptr->db.str, table_name, table_ptr->alias.str, viewName, infiniDB);
CalpontSystemCatalog::TableAliasName tn = make_aliasview(table_ptr->db.str, table_name, table_ptr->alias.str, viewName, columnStore);
gwi.tbList.push_back(tn);
CalpontSystemCatalog::TableAliasName tan = make_aliastable(table_ptr->db.str, table_name, table_ptr->alias.str, infiniDB);
CalpontSystemCatalog::TableAliasName tan = make_aliastable(table_ptr->db.str, table_name, table_ptr->alias.str, columnStore);
gwi.tableMap[tan] = make_pair(0, table_ptr);
#ifdef DEBUG_WALK_COND
cerr << tn << endl;
@ -8646,7 +8646,7 @@ int getGroupPlan(gp_walk_info& gwi, SELECT_LEX& select_lex, SCSEP& csep, cal_gro
if (ifp->cached_table)
tmp = ifp->cached_table;
gwi.tableMap[make_aliastable(sc->schemaName(), sc->tableName(), sc->tableAlias(), sc->isInfiniDB())] =
gwi.tableMap[make_aliastable(sc->schemaName(), sc->tableName(), sc->tableAlias(), sc->isColumnStore())] =
make_pair(1, tmp);
}
else
@ -9235,7 +9235,7 @@ int getGroupPlan(gp_walk_info& gwi, SELECT_LEX& select_lex, SCSEP& csep, cal_gro
string fullname;
fullname = str.c_ptr();
TABLE_LIST* tmp = (funcFieldVec[i]->cached_table ? funcFieldVec[i]->cached_table : 0);
gwi.tableMap[make_aliastable(sc->schemaName(), sc->tableName(), sc->tableAlias(), sc->isInfiniDB())] =
gwi.tableMap[make_aliastable(sc->schemaName(), sc->tableName(), sc->tableAlias(), sc->isColumnStore())] =
make_pair(1, tmp);
}
}

View File

@ -94,7 +94,7 @@ public:
* derived_handler API methods. Could be used by the server
* tp process sub-queries.
* More details in server/sql/dervied_handler.h
* INFINIDB_SHARE* hton share
* COLUMNSTORE_SHARE* hton share
* tbl in the constructor is the list of the tables involved.
* Methods:
* init_scan - get plan and send it to ExeMgr. Get the execution result.
@ -104,7 +104,7 @@ public:
class ha_columnstore_derived_handler: public derived_handler
{
private:
INFINIDB_SHARE *share;
COLUMNSTORE_SHARE *share;
public:
ha_columnstore_derived_handler(THD* thd_arg, TABLE_LIST *tbl);
@ -121,7 +121,7 @@ public:
* select_handler API methods. Could be used by the server
* tp pushdown the whole query described by SELECT_LEX.
* More details in server/sql/select_handler.h
* INFINIDB_SHARE* hton share
* COLUMNSTORE_SHARE* hton share
* sel in the constructor is the semantic tree for the query.
* Methods:
* init_scan - get plan and send it to ExeMgr. Get the execution result.
@ -131,7 +131,7 @@ public:
class ha_columnstore_select_handler: public select_handler
{
private:
INFINIDB_SHARE *share;
COLUMNSTORE_SHARE *share;
public:
ha_columnstore_select_handler(THD* thd_arg, SELECT_LEX* sel);

View File

@ -134,7 +134,7 @@ static MYSQL_THDVAR_BOOL(
static MYSQL_THDVAR_BOOL(
double_for_decimal_math,
PLUGIN_VAR_NOCMDARG,
"Enable/disable the InfiniDB to replace DECIMAL with DOUBLE in arithmetic operation.",
"Enable/disable for ColumnStore to replace DECIMAL with DOUBLE in arithmetic operation.",
NULL,
NULL,
0
@ -227,7 +227,7 @@ static MYSQL_THDVAR_ULONG(
static MYSQL_THDVAR_ULONG(
local_query,
PLUGIN_VAR_RQCMDARG,
"Enable/disable the Infinidb local PM query only feature.",
"Enable/disable the ColumnStore local PM query only feature.",
NULL,
NULL,
0,

View File

@ -540,7 +540,7 @@ execplan::ReturnedColumn* buildPseudoColumn(Item* item,
{
SRCP srcp(sc);
gwi.columnMap.insert(CalpontSelectExecutionPlan::ColumnMap::value_type(sc->columnName(), srcp));
gwi.tableMap[make_aliastable(sc->schemaName(), sc->tableName(), sc->tableAlias(), sc->isInfiniDB())] =
gwi.tableMap[make_aliastable(sc->schemaName(), sc->tableName(), sc->tableAlias(), sc->isColumnStore())] =
make_pair(1, field->cached_table);
}
else if (!gwi.rcWorkStack.empty())

View File

@ -120,13 +120,13 @@ void View::transform()
else
{
// check foreign engine tables
bool infiniDB = (table_ptr->table ? isMCSTable(table_ptr->table) : true);
bool columnStore = (table_ptr->table ? isMCSTable(table_ptr->table) : true);
// trigger system catalog cache
if (infiniDB)
if (columnStore)
csc->columnRIDs(make_table(table_ptr->db.str, table_ptr->table_name.str), true);
CalpontSystemCatalog::TableAliasName tn = make_aliasview(table_ptr->db.str, table_ptr->table_name.str, table_ptr->alias.str, viewName, infiniDB);
CalpontSystemCatalog::TableAliasName tn = make_aliasview(table_ptr->db.str, table_ptr->table_name.str, table_ptr->alias.str, viewName, columnStore);
gwi.tbList.push_back(tn);
gwi.tableMap[tn] = make_pair(0, table_ptr);
fParentGwip->tableMap[tn] = make_pair(0, table_ptr);

View File

@ -454,7 +454,7 @@ tpl_close ( cpsm_tplh_t* ntplh,
status_t
sm_init ( uint32_t sid,
cpsm_conhdl_t** conn_hdl,
uint32_t infinidb_local_query)
uint32_t columnstore_local_query)
{
// clear file content
#if IDB_SM_DEBUG
@ -465,7 +465,7 @@ sm_init ( uint32_t sid,
// @bug5660 Connection changes related to the local pm setting
/**
* when local PM is detected, or infinidb_local_query is set:
* when local PM is detected, or columnstore_local_query is set:
* 1. SELECT query connect to local ExeMgr 127.0.0.1:8601;
* 2. DML/DDL is disallowed.
* once local connection is determined, no need to check
@ -474,14 +474,14 @@ sm_init ( uint32_t sid,
if (*conn_hdl)
{
// existing connection is local, ok.
if ((*conn_hdl)->exeMgr->localQuery() || ! infinidb_local_query)
if ((*conn_hdl)->exeMgr->localQuery() || ! columnstore_local_query)
return STATUS_OK;
// if session variable changes to local, re-establish the connection to loopback.
else
sm_cleanup(*conn_hdl);
}
cpsm_conhdl_t* hndl = new cpsm_conhdl_t(time(0), sid, infinidb_local_query);
cpsm_conhdl_t* hndl = new cpsm_conhdl_t(time(0), sid, columnstore_local_query);
*conn_hdl = hndl;
hndl->sessionID = sid;

View File

@ -198,9 +198,9 @@ typedef boost::shared_ptr<cpsm_tplsch_t> sp_cpsm_tplsch_t;
class cpsm_conhdl_t
{
public:
cpsm_conhdl_t(time_t v, const uint32_t sid, bool infinidb_local_query) :
cpsm_conhdl_t(time_t v, const uint32_t sid, bool columnstore_local_query) :
value(v), sessionID(sid), queryState (NO_QUERY),
exeMgr( new execplan::ClientRotator(sid, "ExeMgr", infinidb_local_query)),
exeMgr( new execplan::ClientRotator(sid, "ExeMgr", columnstore_local_query)),
tblinfo_idx(0), idxinfo_idx(0), curFetchTb (0)
{ }
@ -275,7 +275,7 @@ struct cpsm_tid_t
int value;
};
extern status_t sm_init(uint32_t, cpsm_conhdl_t**, uint32_t infinidb_local_query = false);
extern status_t sm_init(uint32_t, cpsm_conhdl_t**, uint32_t columnstore_local_query = false);
extern status_t sm_cleanup(cpsm_conhdl_t*);
extern status_t tpl_open(tableid_t, cpsm_tplh_t*, cpsm_conhdl_t*);

View File

@ -1,6 +1,6 @@
# List of my.cnf arguments that should be checked and saved during upgrade install
#
infinidb_local_query
columnstore_local_query
log-bin
server-id
max_length_for_sort_data
@ -15,4 +15,4 @@ collation-server
init-connect
binlog_format
secure-auth
port
port

View File

@ -394,12 +394,12 @@ int main(int argc, char** argv)
// check if standby never replied, if so, shutdown
if ( count >= 120 )
{
log.writeLog(__LINE__, "Standby PM not responding, infinidb shutting down", LOG_TYPE_CRITICAL);
log.writeLog(__LINE__, "Standby PM not responding, ColumnStore shutting down", LOG_TYPE_CRITICAL);
//Set the alarm
// aMonitor.sendAlarm(config.moduleName().c_str(), STARTUP_DIAGNOTICS_FAILURE, SET);
// sleep (1);
string cmd = startup::StartUp::installDir() + "/bin/infinidb stop > /dev/null 2>&1";
string cmd = startup::StartUp::installDir() + "/bin/columnstore stop > /dev/null 2>&1";
system(cmd.c_str());
}

View File

@ -5109,11 +5109,11 @@ int ProcessMonitor::changeMyCnf(std::string type)
// set local query flag if on pm
if ( (PMwithUM == "y") && config.moduleType() == "pm" )
{
pos = buf.find("infinidb_local_query", 0);
pos = buf.find("columnstore_local_query", 0);
if ( pos != string::npos )
{
buf = "infinidb_local_query=1";
buf = "columnstore_local_query=1";
string command = "SET GLOBAL " + buf + ";";
@ -5129,11 +5129,11 @@ int ProcessMonitor::changeMyCnf(std::string type)
else
{
// disable, if needed
pos = buf.find("infinidb_local_query", 0);
pos = buf.find("columnstore_local_query", 0);
if ( pos != string::npos )
{
buf = "infinidb_local_query=0";
buf = "columnstore_local_query=0";
string command = "SET GLOBAL " + buf + ";";
int ret = runMariaDBCommandLine(command);

View File

@ -123,9 +123,9 @@ void semDoit(key_t sem_key, const string& label)
void usage()
{
cout << "usage: clearShm [-cvnh]" << endl;
cout << " delete all InfiniDB shared memory data" << endl;
cout << " delete all ColumnStore shared memory data" << endl;
cout << " -h display this help" << endl;
cout << " -c only clear InfiniDB Engine data, leave OAM intact" << endl;
cout << " -c only clear ColumnStore Engine data, leave OAM intact" << endl;
cout << " -v verbose output" << endl;
cout << " -n don't actually delete anything (implies -v)" << endl;
}

View File

@ -509,7 +509,7 @@ int main(int argc, char** argv)
if (brm.getSystemReady() < 1)
{
std::cout << "System is not ready. Verify that InfiniDB "
std::cout << "System is not ready. Verify that ColumnStore "
"is up and ready before running this program" << std::endl;
return 1;
}

View File

@ -146,7 +146,7 @@ int main(int argc, char** argv)
if (dbrm.getSystemReady() < 1)
{
std::string errMsg(
"System is not ready. Verify that InfiniDB is up and ready "
"System is not ready. Verify that ColumnStore is up and ready "
"before running colxml.");
if (bUseLogFile)

View File

@ -53,7 +53,7 @@ using namespace logging;
namespace
{
const int64_t infinidb_precision[19] =
const int64_t columnstore_precision[19] =
{
0,
9,
@ -415,7 +415,7 @@ int64_t number_int_value(const string& data,
(ct.colDataType == CalpontSystemCatalog::UDECIMAL) ||
(ct.scale > 0))
{
int64_t rangeUp = infinidb_precision[ct.precision];
int64_t rangeUp = columnstore_precision[ct.precision];
int64_t rangeLow = -rangeUp;
if (intVal > rangeUp)

View File

@ -1168,7 +1168,7 @@ IDB_Decimal Func_cast_decimal::getDecimalVal(Row& row,
int32_t decimals = parm[1]->data()->getIntVal(row, isNull);
int64_t max_length = parm[2]->data()->getIntVal(row, isNull);
// As of 2.0, max length infiniDB can support is 18
// As of 2.0, max length columnStore can support is 18
// decimal(0,0) is valid, and no limit on integer number
if (max_length > 18 || max_length <= 0)
max_length = 18;

View File

@ -86,13 +86,13 @@
2045 ERR_PRIMPROC_DOWN At least one PrimProc closed the connection unexpectedly.
2046 ERR_READ_INPUT_DATALIST Input datalist read error.
2047 ERR_LOCAL_QUERY_UM Query attempted on UM (no PM) with infinidb_local_query set.
2047 ERR_LOCAL_QUERY_UM Query attempted on UM (no PM) with columnstore_local_query set.
# disk-based join runtime errors from supported queries
2048 ERR_DBJ_FILE_IO_ERROR There was an IO error doing a disk-based join.
2049 ERR_DBJ_UNKNOWN_ERROR An unknown error error occured doing a disk-based join. Check the error log & contact support.
2050 ERR_DBJ_DISK_USAGE_LIMIT This query exceeded the temp disk usage limit. Raise infinidb_diskjoin_smallsidelimit if possible and try again.
2051 ERR_DBJ_DATA_DISTRIBUTION The data distribution in this query overflowed a disk-based join bucket. If possible, raise infinidb_diskjoin_bucketsize and try again.
2050 ERR_DBJ_DISK_USAGE_LIMIT This query exceeded the temp disk usage limit. Raise columnstore_diskjoin_smallsidelimit if possible and try again.
2051 ERR_DBJ_DATA_DISTRIBUTION The data distribution in this query overflowed a disk-based join bucket. If possible, raise columnstore_diskjoin_bucketsize and try again.
2052 INFO_SWITCHING_TO_DJS Out of UM memory, switching to disk-based join.
2053 ERR_FUNC_OUT_OF_RANGE_RESULT The result is out of range for function %1% using value(s): %2% %3%
@ -141,7 +141,7 @@
4014 ERR_CONSTRAINTS Constraints are currently not supported in Columnstore.
4015 ERR_NOT_NULL_CONSTRAINTS Column '%1%' cannot be null.
4016 ERR_DML_DDL_SLAVE DML and DDL statements for Columnstore tables can only be run from the replication master.
4017 ERR_DML_DDL_LOCAL DML and DDL statements are not allowed when infinidb_local_query is greater than 0.
4017 ERR_DML_DDL_LOCAL DML and DDL statements are not allowed when columnstore_local_query is greater than 0.
4018 ERR_NON_SUPPORT_SYNTAX The statement is not supported in Columnstore.
# UDF

View File

@ -53,7 +53,7 @@ bool sFlg;
void usage()
{
cout << "usage: reset_locks [-vnh]" << endl;
cout << " reset all InfiniDB shared memory locks" << endl;
cout << " reset all ColumnStore shared memory locks" << endl;
cout << " -h display this help" << endl;
cout << " -v verbose output" << endl;
cout << " -s skip session mgr resets" << endl;

View File

@ -48,7 +48,7 @@ using namespace execplan;
namespace WriteEngine
{
// Maximum saturation value for DECIMAL types based on precision
const long long infinidb_precision[19] =
const long long columnstore_precision[19] =
{
0,
9,
@ -759,14 +759,14 @@ void XMLJob::initSatLimits( JobColumn& curColumn ) const
else if ( curColumn.typeName ==
ColDataTypeStr[CalpontSystemCatalog::DECIMAL] )
{
curColumn.fMinIntSat = -infinidb_precision[curColumn.precision];
curColumn.fMaxIntSat = infinidb_precision[curColumn.precision];
curColumn.fMinIntSat = -columnstore_precision[curColumn.precision];
curColumn.fMaxIntSat = columnstore_precision[curColumn.precision];
}
else if ( curColumn.typeName ==
ColDataTypeStr[CalpontSystemCatalog::UDECIMAL] )
{
curColumn.fMinIntSat = 0;
curColumn.fMaxIntSat = infinidb_precision[curColumn.precision];
curColumn.fMaxIntSat = columnstore_precision[curColumn.precision];
}
else if ( curColumn.typeName ==
ColDataTypeStr[CalpontSystemCatalog::FLOAT] )