You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-07-30 19:23:07 +03:00
Merge branch 'develop-1.1' into develop-1.2-merge-up-20190514
This commit is contained in:
@ -566,17 +566,11 @@ assignment_commalist:
|
||||
assignment:
|
||||
column COMPARISON scalar_exp
|
||||
{
|
||||
$$ = new ColumnAssignment();
|
||||
$$->fColumn = $1;
|
||||
$$->fOperator = $2;
|
||||
$$->fScalarExpression = $3;
|
||||
$$ = new ColumnAssignment($1, $2, $3);
|
||||
}
|
||||
| column COMPARISON NULLX
|
||||
{
|
||||
$$ = new ColumnAssignment();
|
||||
$$->fColumn = $1;
|
||||
$$->fOperator = $2;
|
||||
$$->fScalarExpression = $3;
|
||||
$$ = new ColumnAssignment($1, $2, $3);
|
||||
}
|
||||
;
|
||||
|
||||
|
@ -409,6 +409,14 @@ public:
|
||||
class ColumnAssignment
|
||||
{
|
||||
public:
|
||||
explicit ColumnAssignment(
|
||||
std::string const& column,
|
||||
std::string const& op = "=",
|
||||
std::string const& expr = "") :
|
||||
fColumn(column), fOperator(op), fScalarExpression(expr),
|
||||
fFromCol(false), fFuncScale(0), fIsNull(false)
|
||||
{};
|
||||
|
||||
/** @brief dump to stdout
|
||||
*/
|
||||
std::ostream& put(std::ostream& os) const;
|
||||
@ -423,6 +431,7 @@ public:
|
||||
std::string fScalarExpression;
|
||||
bool fFromCol;
|
||||
uint32_t fFuncScale;
|
||||
bool fIsNull;
|
||||
};
|
||||
|
||||
/** @brief Stores a value list or a query specification
|
||||
|
@ -257,7 +257,8 @@ void UpdateDMLPackage::buildUpdateFromMysqlBuffer(UpdateSqlStatement& updateStm
|
||||
while (iter != updateStmt.fColAssignmentListPtr->end())
|
||||
{
|
||||
ColumnAssignment* colaPtr = *iter;
|
||||
DMLColumn* colPtr = new DMLColumn(colaPtr->fColumn, colaPtr->fScalarExpression, colaPtr->fFromCol, colaPtr->fFuncScale);
|
||||
DMLColumn* colPtr = new DMLColumn(colaPtr->fColumn, colaPtr->fScalarExpression, colaPtr->fFromCol, colaPtr->fFuncScale,
|
||||
colaPtr->fIsNull);
|
||||
rowPtr->get_ColumnList().push_back(colPtr);
|
||||
|
||||
++iter;
|
||||
|
@ -1095,10 +1095,7 @@ uint32_t doUpdateDelete(THD* thd)
|
||||
else
|
||||
schemaName = string(item->db_name);
|
||||
|
||||
columnAssignmentPtr = new ColumnAssignment();
|
||||
columnAssignmentPtr->fColumn = string(item->name.str);
|
||||
columnAssignmentPtr->fOperator = "=";
|
||||
columnAssignmentPtr->fFuncScale = 0;
|
||||
columnAssignmentPtr = new ColumnAssignment(item->name, "=", "");
|
||||
Item* value = value_it++;
|
||||
|
||||
if (value->type() == Item::STRING_ITEM)
|
||||
@ -1222,8 +1219,9 @@ uint32_t doUpdateDelete(THD* thd)
|
||||
else if ( value->type() == Item::NULL_ITEM )
|
||||
{
|
||||
// dmlStmt += "NULL";
|
||||
columnAssignmentPtr->fScalarExpression = "NULL";
|
||||
columnAssignmentPtr->fScalarExpression = "";
|
||||
columnAssignmentPtr->fFromCol = false;
|
||||
columnAssignmentPtr->fIsNull = true;
|
||||
}
|
||||
else if ( value->type() == Item::SUBSELECT_ITEM )
|
||||
{
|
||||
|
@ -899,9 +899,9 @@ int processCommand(string* arguments)
|
||||
SendToWES(oam, bs);
|
||||
}
|
||||
#if _MSC_VER
|
||||
if (_strnicmp(arguments[1].c_str(), "stop", 4) == 0))
|
||||
else if (_strnicmp(arguments[1].c_str(), "stop", 4) == 0))
|
||||
#else
|
||||
if (strncasecmp(arguments[1].c_str(), "stop", 4) == 0)
|
||||
else if (strncasecmp(arguments[1].c_str(), "stop", 4) == 0)
|
||||
#endif
|
||||
{
|
||||
ByteStream bs;
|
||||
@ -913,9 +913,9 @@ int processCommand(string* arguments)
|
||||
SendToWES(oam, bs);
|
||||
}
|
||||
#if _MSC_VER
|
||||
if (_strnicmp(arguments[1].c_str(), "status", 6) == 0))
|
||||
else if (_strnicmp(arguments[1].c_str(), "status", 6) == 0))
|
||||
#else
|
||||
if (strncasecmp(arguments[1].c_str(), "status", 6) == 0)
|
||||
else if (strncasecmp(arguments[1].c_str(), "status", 6) == 0)
|
||||
#endif
|
||||
{
|
||||
ByteStream bs;
|
||||
|
@ -5336,7 +5336,7 @@ bool storageSetup(bool amazonInstall)
|
||||
|
||||
if ( (glusterInstalled == "y" && singleServerInstall != "1") && hadoopInstalled == "y" )
|
||||
{
|
||||
cout << "There are 5 options when configuring the storage: internal, external, DataRedundancy, or hdfs" << endl << endl;
|
||||
cout << "There are 4 options when configuring the storage: internal, external, DataRedundancy, or hdfs" << endl << endl;
|
||||
prompt = "Select the type of Data Storage [1=internal, 2=external, 3=DataRedundancy, 4=hdfs] (" + storageType + ") > ";
|
||||
}
|
||||
|
||||
|
@ -267,7 +267,7 @@ void diskMonitor()
|
||||
|
||||
blksize = buf.f_bsize;
|
||||
blocks = buf.f_blocks;
|
||||
freeblks = buf.f_bfree;
|
||||
freeblks = buf.f_bavail;
|
||||
|
||||
totalBlocks = blocks * blksize;
|
||||
free = freeblks * blksize;
|
||||
@ -396,7 +396,7 @@ void diskMonitor()
|
||||
|
||||
blksize = buf.f_bsize;
|
||||
blocks = buf.f_blocks;
|
||||
freeblks = buf.f_bfree;
|
||||
freeblks = buf.f_bavail;
|
||||
|
||||
totalBlocks = blocks * blksize;
|
||||
free = freeblks * blksize;
|
||||
|
@ -359,6 +359,18 @@ int main(int argc, char* argv[])
|
||||
exit(-1);
|
||||
}
|
||||
|
||||
// WaitPeriod
|
||||
try
|
||||
{
|
||||
string waitPeriod = sysConfigOld->getConfig(SystemSection, "WaitPeriod");
|
||||
if (waitPeriod.length() > 0)
|
||||
{
|
||||
sysConfigNew->setConfig(SystemSection, "WaitPeriod", waitPeriod);
|
||||
}
|
||||
}
|
||||
catch (...)
|
||||
{ }
|
||||
|
||||
//setup System Language
|
||||
string systemLang = "C";
|
||||
|
||||
|
Reference in New Issue
Block a user