You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-08-01 06:46:55 +03:00
MCOL-1433 Fix TIME for MAKEDATE/TIMEDIFF
Fix saturation behaviour for TIME with MAKEDATE() and TIMEDIFF()
This commit is contained in:
@ -149,9 +149,10 @@ uint64_t makedate(rowgroup::Row& row,
|
||||
case CalpontSystemCatalog::TIME:
|
||||
{
|
||||
std::ostringstream ss;
|
||||
Time aTime = parm[1]->data()->getTimeIntVal(row, isNull);
|
||||
ss << aTime.hour << aTime.minute << aTime.second;
|
||||
dayofyear = ss.str();
|
||||
char buf[9];
|
||||
uint64_t aTime = parm[1]->data()->getTimeIntVal(row, isNull);
|
||||
DataConvert::timeToString1(aTime, buf, 9);
|
||||
dayofyear = buf;
|
||||
break;
|
||||
}
|
||||
|
||||
|
@ -118,6 +118,11 @@ string Func_timediff::getStrVal(rowgroup::Row& row,
|
||||
|
||||
case execplan::CalpontSystemCatalog::TIME:
|
||||
case execplan::CalpontSystemCatalog::DATETIME:
|
||||
if (type1 != type2)
|
||||
{
|
||||
isNull = true;
|
||||
break;
|
||||
}
|
||||
val1 = parm[0]->data()->getDatetimeIntVal(row, isNull);
|
||||
break;
|
||||
|
||||
|
Reference in New Issue
Block a user