diff --git a/source/adios2/toolkit/format/bp/BPSerializer.tcc b/source/adios2/toolkit/format/bp/BPSerializer.tcc index 2592a45003..8414fa6eb5 100644 --- a/source/adios2/toolkit/format/bp/BPSerializer.tcc +++ b/source/adios2/toolkit/format/bp/BPSerializer.tcc @@ -98,6 +98,8 @@ void BPSerializer::UpdateIndexOffsetsCharacteristics(size_t ¤tPosition, std::vector &buffer) { const bool isLittleEndian = helper::IsLittleEndian(); + const uint8_t characteristicsCount = + helper::ReadValue(buffer, currentPosition, isLittleEndian); const uint32_t characteristicsLength = helper::ReadValue(buffer, currentPosition, isLittleEndian); diff --git a/source/adios2/toolkit/format/bp/bp3/BP3Deserializer.cpp b/source/adios2/toolkit/format/bp/bp3/BP3Deserializer.cpp index 141ddf1248..0698a499d7 100644 --- a/source/adios2/toolkit/format/bp/bp3/BP3Deserializer.cpp +++ b/source/adios2/toolkit/format/bp/bp3/BP3Deserializer.cpp @@ -29,7 +29,7 @@ namespace format std::mutex BP3Deserializer::m_Mutex; BP3Deserializer::BP3Deserializer(helper::Comm const &comm) -: BPBase(comm), BP3Base(comm), m_Minifooter(3) +: BP3Base(comm), BPBase(comm), m_Minifooter(3) { } @@ -139,6 +139,8 @@ void BP3Deserializer::ParsePGIndex(const BufferSTL &bufferSTL, m_MetadataSet.DataPGCount = helper::ReadValue( buffer, position, m_Minifooter.IsLittleEndian); + const size_t length = helper::ReadValue( + buffer, position, m_Minifooter.IsLittleEndian); size_t localPosition = 0; @@ -208,6 +210,11 @@ void BP3Deserializer::ParseVariablesIndex(const BufferSTL &bufferSTL, m_Minifooter.VarsIndexStart, m_Minifooter.PGIndexStart, " BP3 variable index start < pg index start, in call to Open"); + const uint32_t count = helper::ReadValue( + buffer, position, m_Minifooter.IsLittleEndian); + const uint64_t length = helper::ReadValue( + buffer, position, m_Minifooter.IsLittleEndian); + const size_t startPosition = position; size_t localPosition = 0; @@ -312,6 +319,11 @@ void BP3Deserializer::ParseAttributesIndex(const BufferSTL &bufferSTL, m_Minifooter.AttributesIndexStart, m_Minifooter.PGIndexStart, " BP3 attributes index start < pg index start, in call to Open"); + const uint32_t count = helper::ReadValue( + buffer, position, m_Minifooter.IsLittleEndian); + const uint64_t length = helper::ReadValue( + buffer, position, m_Minifooter.IsLittleEndian); + const size_t startPosition = position; size_t localPosition = 0; diff --git a/source/adios2/toolkit/format/bp/bp4/BP4Deserializer.cpp b/source/adios2/toolkit/format/bp/bp4/BP4Deserializer.cpp index 54a87fd8f4..5ce632c1ef 100644 --- a/source/adios2/toolkit/format/bp/bp4/BP4Deserializer.cpp +++ b/source/adios2/toolkit/format/bp/bp4/BP4Deserializer.cpp @@ -33,7 +33,7 @@ namespace format std::mutex BP4Deserializer::m_Mutex; BP4Deserializer::BP4Deserializer(helper::Comm const &comm) -: BPBase(comm), BP4Base(comm), m_Minifooter(4) +: BP4Base(comm), BPBase(comm), m_Minifooter(4) { } @@ -335,6 +335,8 @@ void BP4Deserializer::ParseVariablesIndexPerStep(const BufferSTL &bufferSTL, const auto &buffer = bufferSTL.m_Buffer; size_t position = m_MetadataIndexTable[submetadatafileId][step][1]; + const uint32_t count = helper::ReadValue( + buffer, position, m_Minifooter.IsLittleEndian); const uint64_t length = helper::ReadValue( buffer, position, m_Minifooter.IsLittleEndian); @@ -526,6 +528,8 @@ void BP4Deserializer::ParseAttributesIndexPerStep(const BufferSTL &bufferSTL, const auto &buffer = bufferSTL.m_Buffer; size_t position = m_MetadataIndexTable[submetadatafileId][step][2]; + const uint32_t count = helper::ReadValue( + buffer, position, m_Minifooter.IsLittleEndian); const uint64_t length = helper::ReadValue( buffer, position, m_Minifooter.IsLittleEndian); diff --git a/source/adios2/toolkit/format/bp/bp4/BP4Serializer.tcc b/source/adios2/toolkit/format/bp/bp4/BP4Serializer.tcc index 05e908232b..b3b4296033 100644 --- a/source/adios2/toolkit/format/bp/bp4/BP4Serializer.tcc +++ b/source/adios2/toolkit/format/bp/bp4/BP4Serializer.tcc @@ -624,6 +624,8 @@ void BP4Serializer::PutBoundsRecord(const bool singleValue, static_cast(stats.SubBlockInfo.SubBlockSize); helper::InsertToBuffer(buffer, &subBlockSize); + const uint16_t N = + static_cast(stats.SubBlockInfo.Div.size()); for (auto const d : stats.SubBlockInfo.Div) { helper::InsertToBuffer(buffer, &d); @@ -676,6 +678,8 @@ void BP4Serializer::PutBoundsRecord(const bool singleValue, static_cast(stats.SubBlockInfo.SubBlockSize); helper::CopyToBuffer(buffer, position, &subBlockSize); + const uint16_t N = + static_cast(stats.SubBlockInfo.Div.size()); for (auto const d : stats.SubBlockInfo.Div) { helper::CopyToBuffer(buffer, position, &d);