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
fix(rowgroup): fix for the forgotten attributes assignment
This commit is contained in:
@ -332,15 +332,14 @@ RGData::RGData(const RowGroup& rg)
|
|||||||
strings.reset(new StringStore());
|
strings.reset(new StringStore());
|
||||||
|
|
||||||
userDataStore.reset();
|
userDataStore.reset();
|
||||||
|
columnCount = rg.getColumnCount();
|
||||||
columnCount = rg.getColumnCount();
|
rowSize = rg.getRowSize();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
RGData::RGData(const RowGroup& rg, allocators::CountingAllocator<RGDataBufType>& _alloc) : alloc(_alloc)
|
RGData::RGData(const RowGroup& rg, allocators::CountingAllocator<RGDataBufType>& _alloc) : alloc(_alloc)
|
||||||
{
|
{
|
||||||
rowData = boost::allocate_shared<RGDataBufType>(alloc.value(), rg.getMaxDataSize());
|
rowData = boost::allocate_shared<RGDataBufType>(alloc.value(), rg.getMaxDataSize());
|
||||||
// rowData = std::make_shared(uint8_t[rg.getMaxDataSize()]);
|
|
||||||
|
|
||||||
if (rg.usesStringTable())
|
if (rg.usesStringTable())
|
||||||
{
|
{
|
||||||
@ -349,6 +348,8 @@ RGData::RGData(const RowGroup& rg, allocators::CountingAllocator<RGDataBufType>&
|
|||||||
}
|
}
|
||||||
|
|
||||||
userDataStore.reset();
|
userDataStore.reset();
|
||||||
|
rowSize = rg.getRowSize();
|
||||||
|
columnCount = rg.getColumnCount();
|
||||||
}
|
}
|
||||||
|
|
||||||
void RGData::reinit(const RowGroup& rg, uint32_t rowCount)
|
void RGData::reinit(const RowGroup& rg, uint32_t rowCount)
|
||||||
|
@ -2203,10 +2203,11 @@ inline uint64_t StringStore::getSize() const
|
|||||||
|
|
||||||
inline void RGData::getRow(uint32_t num, Row* row)
|
inline void RGData::getRow(uint32_t num, Row* row)
|
||||||
{
|
{
|
||||||
idbassert(columnCount == row->getColumnCount() && rowSize == row->getSize());
|
uint32_t incomingRowSize = row->getSize();
|
||||||
uint32_t size = row->getSize();
|
idbassert(columnCount == row->getColumnCount() && rowSize == incomingRowSize);
|
||||||
|
|
||||||
row->setData(
|
row->setData(
|
||||||
Row::Pointer(&rowData[RowGroup::getHeaderSize() + (num * size)], strings.get(), userDataStore.get()));
|
Row::Pointer(&rowData[RowGroup::getHeaderSize() + (num * incomingRowSize)], strings.get(), userDataStore.get()));
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace rowgroup
|
} // namespace rowgroup
|
||||||
|
Reference in New Issue
Block a user