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-267 Bulk write & PrimProc fixes
This commit is contained in:
@ -425,7 +425,7 @@ again:
|
|||||||
// is larger than the number of signatures in this block. Return a "special" string so that
|
// is larger than the number of signatures in this block. Return a "special" string so that
|
||||||
// the query keeps going, but that can be recognized as an internal error upon inspection.
|
// the query keeps going, but that can be recognized as an internal error upon inspection.
|
||||||
//@Bug 2534. Change the length check to 8000
|
//@Bug 2534. Change the length check to 8000
|
||||||
if (ret->len < 0 || ret->len > 8001)
|
if (ret->len < 0 || ret->len > 8176)
|
||||||
{
|
{
|
||||||
ret->data = reinterpret_cast<const uint8_t*>(signatureNotFound);
|
ret->data = reinterpret_cast<const uint8_t*>(signatureNotFound);
|
||||||
ret->len = strlen(reinterpret_cast<const char*>(ret->data));
|
ret->len = strlen(reinterpret_cast<const char*>(ret->data));
|
||||||
|
@ -627,7 +627,7 @@ int Dctnry::insertDctnry2(Signature& sig)
|
|||||||
{
|
{
|
||||||
int rc = 0;
|
int rc = 0;
|
||||||
int write_size;
|
int write_size;
|
||||||
bool lbid_in_token;
|
bool lbid_in_token = false;
|
||||||
|
|
||||||
sig.token.bc = 0;
|
sig.token.bc = 0;
|
||||||
|
|
||||||
@ -647,6 +647,7 @@ int Dctnry::insertDctnry2(Signature& sig)
|
|||||||
|
|
||||||
sig.size -= write_size;
|
sig.size -= write_size;
|
||||||
sig.signature += write_size;
|
sig.signature += write_size;
|
||||||
|
m_curFbo = m_lastFbo;
|
||||||
|
|
||||||
if (!lbid_in_token)
|
if (!lbid_in_token)
|
||||||
{
|
{
|
||||||
@ -662,7 +663,7 @@ int Dctnry::insertDctnry2(Signature& sig)
|
|||||||
cb.file.pFile = m_dFile;
|
cb.file.pFile = m_dFile;
|
||||||
sig.token.bc++;
|
sig.token.bc++;
|
||||||
|
|
||||||
RETURN_ON_ERROR( writeDBFile(cb, &m_curBlock, m_curLbid) );
|
RETURN_ON_ERROR( writeDBFileNoVBCache(cb, &m_curBlock, m_curFbo) );
|
||||||
memset( m_curBlock.data, 0, sizeof(m_curBlock.data));
|
memset( m_curBlock.data, 0, sizeof(m_curBlock.data));
|
||||||
memcpy( m_curBlock.data, &m_dctnryHeader2, m_totalHdrBytes);
|
memcpy( m_curBlock.data, &m_dctnryHeader2, m_totalHdrBytes);
|
||||||
m_freeSpace = BYTE_PER_BLOCK - m_totalHdrBytes;
|
m_freeSpace = BYTE_PER_BLOCK - m_totalHdrBytes;
|
||||||
|
Reference in New Issue
Block a user