odd behavior of InquireVariable
Created by: germasch
If I add this snipped to TestBPWriteReadAsStreamADIOS2.cpp
, it then fails:
diff --git a/testing/adios2/engine/bp/TestBPWriteReadAsStreamADIOS2.cpp b/testing/adios2/engine/bp/TestBPWriteReadAsStreamADIOS2.cpp
index fd5203f7..cd7ded44 100644
--- a/testing/adios2/engine/bp/TestBPWriteReadAsStreamADIOS2.cpp
+++ b/testing/adios2/engine/bp/TestBPWriteReadAsStreamADIOS2.cpp
@@ -990,6 +990,9 @@ TEST_F(BPWriteReadAsStreamTestADIOS2, ReaderWriterDefineVariable)
adios2::Variable<double> varR64 = io.DefineVariable<double>(
"r64", shape, start, count, adios2::ConstantDims);
EXPECT_TRUE(varR64);
+ adios2::Variable<double> varR64_2 =
+ io.InquireVariable<double>("r64");
+ EXPECT_TRUE(varR64_2);
}
SmallTestData currentTestData = generateNewSmallTestData(
It happens only in this particular case, because there is also an active streaming reader on the same IO -- otherwise InquireVariable
works just fine to recover a handle to a previously DefineVariable
ed variable. (Which I think as such should be legal to do, considering that Put
by name uses a similar mechanism.)