diff --git a/storage/ndb/src/kernel/blocks/dbtup/DbtupIndex.cpp b/storage/ndb/src/kernel/blocks/dbtup/DbtupIndex.cpp index cf71ed8f8e585978249c7b23d59d9a9ffd6dc13a..b51cc02a70336861d1a44806e31f8f288676b969 100644 --- a/storage/ndb/src/kernel/blocks/dbtup/DbtupIndex.cpp +++ b/storage/ndb/src/kernel/blocks/dbtup/DbtupIndex.cpp @@ -452,7 +452,7 @@ Dbtup::execBUILDINDXREQ(Signal* signal) } // set to first tuple position - const Uint32 firstTupleNo = ! buildPtr.p->m_build_vs ? 0 : 1; + const Uint32 firstTupleNo = 0; buildPtr.p->m_fragNo= 0; buildPtr.p->m_pageId= 0; buildPtr.p->m_tupleNo= firstTupleNo; diff --git a/storage/ndb/tools/restore/Restore.cpp b/storage/ndb/tools/restore/Restore.cpp index 3752069a62fe807c202c6be0cf48aca1599ee4f3..9ca794c7bf4260432fe8650e3eaa209ffe0eca89 100644 --- a/storage/ndb/tools/restore/Restore.cpp +++ b/storage/ndb/tools/restore/Restore.cpp @@ -515,7 +515,8 @@ RestoreDataIterator::getNextTuple(int & res) const AttributeDesc * attr_desc = m_tuple.getDesc(attrId); // just a reminder - remove when backwards compat implemented - if(false && attr_desc->m_column->getNullable()){ + if(m_currentTable->backupVersion < MAKE_VERSION(5,1,3) && + attr_desc->m_column->getNullable()){ const Uint32 ind = attr_desc->m_nullBitIndex; if(BitmaskImpl::get(m_currentTable->m_nullBitmaskSize, buf_ptr,ind)){ @@ -524,6 +525,11 @@ RestoreDataIterator::getNextTuple(int & res) continue; } } + + if (m_currentTable->backupVersion < MAKE_VERSION(5,1,3)) + { + sz *= 4; + } attr_data->null = false; attr_data->void_value = &data->Data[0]; @@ -842,7 +848,7 @@ void TableS::createAttr(NdbDictionary::Column *column) } // just a reminder - does not solve backwards compat - if (backupVersion < MAKE_VERSION(5,1,0)) + if (backupVersion < MAKE_VERSION(5,1,3)) { d->m_nullBitIndex = m_noOfNullable; m_noOfNullable++;