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 1. Templatized convertValueNum() function.
2. Allocate int128_t buffers in batchprimitiveprocessor if a query involves wide decimal columns.
This commit is contained in:
committed by
Roman Nozdrin
parent
9b714274db
commit
62d0c82d75
@ -79,6 +79,8 @@ void PassThruCommand::project()
|
||||
{
|
||||
case 16:
|
||||
cout << __FILE__<< ":" <<__LINE__ << " Fix for 16 Bytes ?" << endl;
|
||||
bpp->serialized->append((uint8_t*) bpp->binaryValues, bpp->ridCount << 4);
|
||||
break;
|
||||
|
||||
case 8:
|
||||
bpp->serialized->append((uint8_t*) bpp->values, bpp->ridCount << 3);
|
||||
@ -121,7 +123,6 @@ void PassThruCommand::projectIntoRowGroup(RowGroup& rg, uint32_t col)
|
||||
case 1:
|
||||
for (i = 0; i < bpp->ridCount; i++)
|
||||
{
|
||||
// cout << "PTC: " << bpp->values[i] << endl;
|
||||
r.setUintField_offset<1>(bpp->values[i], offset);
|
||||
r.nextRow(rowSize);
|
||||
}
|
||||
@ -131,7 +132,6 @@ void PassThruCommand::projectIntoRowGroup(RowGroup& rg, uint32_t col)
|
||||
case 2:
|
||||
for (i = 0; i < bpp->ridCount; i++)
|
||||
{
|
||||
// cout << "PTC: " << bpp->values[i] << endl;
|
||||
r.setUintField_offset<2>(bpp->values[i], offset);
|
||||
r.nextRow(rowSize);
|
||||
}
|
||||
@ -150,7 +150,6 @@ void PassThruCommand::projectIntoRowGroup(RowGroup& rg, uint32_t col)
|
||||
case 8:
|
||||
for (i = 0; i < bpp->ridCount; i++)
|
||||
{
|
||||
// cout << "PTC: " << bpp->values[i] << endl;
|
||||
r.setUintField_offset<8>(bpp->values[i], offset);
|
||||
r.nextRow(rowSize);
|
||||
}
|
||||
@ -160,15 +159,7 @@ void PassThruCommand::projectIntoRowGroup(RowGroup& rg, uint32_t col)
|
||||
cout << __FILE__ << ":" << __LINE__ << " PassThruCommand::projectIntoRowGroup" << " Addition for 16 Bytes" << endl;
|
||||
for (i = 0; i < bpp->ridCount; i++)
|
||||
{
|
||||
cout << "PTC: " << "BIN16 " << i << " "
|
||||
<< hex
|
||||
<< *((int64_t*) bpp->values[i])
|
||||
<< " "
|
||||
<< *(((int64_t*) bpp->values[i]) +1)
|
||||
<< endl;
|
||||
// values[i] is 8 bytes so it contains the pointer to bpp->outputMsg set by ColumnCommand::process_OT_BOTH()
|
||||
r.setBinaryField_offset((uint128_t*)bpp->values[i], 16, offset);
|
||||
|
||||
r.setBinaryField_offset(&bpp->binaryValues[i], 16, offset);
|
||||
r.nextRow(rowSize);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user