You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-07-29 08:21:15 +03:00
MCOL-641 Replaced IDB_Decima.__v union with int128_t attribute.
Moved all tests into ./test Introduced ./datatypes directory
This commit is contained in:
@ -1334,14 +1334,11 @@ size_t DataConvert::writeFractionalPart(int128_t* dec, char* p,
|
||||
scaleDivisor *= columnstore_pow_10[scale%maxPowOf10];
|
||||
}
|
||||
|
||||
//for (size_t i = 1; i < scale; i++)
|
||||
// scaleDivisor *= 10;
|
||||
|
||||
int128_t fractionalPart = *dec % scaleDivisor;
|
||||
// divide by the base untill we have non-zero quotinent
|
||||
size_t written = 0;
|
||||
scaleDivisor /= 10;
|
||||
while (scaleDivisor > 1 && *dec / scaleDivisor == 0)
|
||||
while (scaleDivisor > 1 && fractionalPart/scaleDivisor == 0)
|
||||
{
|
||||
*p++ = '0';
|
||||
written++;
|
||||
@ -1385,6 +1382,8 @@ void DataConvert::toString(int128_t* dec, uint8_t scale,
|
||||
p += writeFractionalPart(dec, p, buflen-(p-original_p), scale);
|
||||
}
|
||||
|
||||
*p = '\0';
|
||||
|
||||
if (buflen <= p-original_p)
|
||||
{
|
||||
throw QueryDataExcept("toString() char buffer overflow.", formatErr);
|
||||
|
Reference in New Issue
Block a user