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

Merge branch 'mariadb-corporation:develop' into develop

This commit is contained in:
Mu He
2023-04-05 18:22:52 +02:00
committed by GitHub
478 changed files with 13140 additions and 5637 deletions

View File

@ -143,10 +143,10 @@ int64_t Func_ceil::getIntVal(Row& row, FunctionParm& parm, bool& isNull, Calpont
case CalpontSystemCatalog::CHAR:
case CalpontSystemCatalog::TEXT:
{
const string& str = parm[0]->data()->getStrVal(row, isNull);
const auto& str = parm[0]->data()->getStrVal(row, isNull);
if (!isNull)
ret = (int64_t)ceil(strtod(str.c_str(), 0));
ret = (int64_t)ceil(strtod(str.str(), 0));
}
break;
@ -268,10 +268,10 @@ uint64_t Func_ceil::getUintVal(Row& row, FunctionParm& parm, bool& isNull,
case CalpontSystemCatalog::CHAR:
case CalpontSystemCatalog::TEXT:
{
const string& str = parm[0]->data()->getStrVal(row, isNull);
const auto& str = parm[0]->data()->getStrVal(row, isNull);
if (!isNull)
ret = (uint64_t)ceil(strtod(str.c_str(), 0));
ret = (uint64_t)ceil(strtod(str.str(), 0));
}
break;
@ -329,10 +329,10 @@ double Func_ceil::getDoubleVal(Row& row, FunctionParm& parm, bool& isNull,
else if (op_ct.colDataType == CalpontSystemCatalog::VARCHAR ||
op_ct.colDataType == CalpontSystemCatalog::CHAR || op_ct.colDataType == CalpontSystemCatalog::TEXT)
{
const string& str = parm[0]->data()->getStrVal(row, isNull);
const auto& str = parm[0]->data()->getStrVal(row, isNull);
if (!isNull)
ret = ceil(strtod(str.c_str(), 0));
ret = ceil(strtod(str.str(), 0));
}
else if (op_ct.colDataType == CalpontSystemCatalog::LONGDOUBLE)
{
@ -386,10 +386,12 @@ long double Func_ceil::getLongDoubleVal(Row& row, FunctionParm& parm, bool& isNu
else if (op_ct.colDataType == CalpontSystemCatalog::VARCHAR ||
op_ct.colDataType == CalpontSystemCatalog::CHAR || op_ct.colDataType == CalpontSystemCatalog::TEXT)
{
const string& str = parm[0]->data()->getStrVal(row, isNull);
const auto& str = parm[0]->data()->getStrVal(row, isNull);
if (!isNull)
ret = ceil(strtod(str.c_str(), 0));
{
ret = ceil(strtod(str.str(), 0));
}
}
else if (op_ct.colDataType == CalpontSystemCatalog::DECIMAL ||
op_ct.colDataType == CalpontSystemCatalog::UDECIMAL)
@ -557,10 +559,10 @@ IDB_Decimal Func_ceil::getDecimalVal(Row& row, FunctionParm& parm, bool& isNull,
case execplan::CalpontSystemCatalog::CHAR:
case execplan::CalpontSystemCatalog::TEXT:
{
const string& str = parm[0]->data()->getStrVal(row, isNull);
const auto& str = parm[0]->data()->getStrVal(row, isNull);
if (!isNull)
ret.value = (int64_t)ceil(strtod(str.c_str(), 0));
ret.value = (int64_t)ceil(strtod(str.str(), 0));
}
break;