You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Using the Fortran bindings and the BP5 format, the BPReader fails to read any variables from a valid BP5 file. The engine successfully opens the file but reading any valid variables fails and calling adios2_available_variables reports zero variables in the file. The BP4 reader works as expected.
To Reproduce
The example examples/hello/bpReader/bpReaderHeatMap3D.F90 suffers from this problem. To build & run from ADIOS source:
cd ADIOS2
cmake -B build -DADIOS2_BUILD_EXAMPLE=ON
cmake --build build
build/bin/adios2_hello_bpReaderHeatMap3D_f
The output from the example's write step can be verified by inspecting with bpls build/bin/HeatMap3D_f.bp.
The MPI-enabled exe build/bin/adios2_hello_bpReaderHeatMap3D_f_mpi also fails.
Note: these examples fail silently. Run the equivalent C++ exe build/bin/adios2_hello_bpReaderHeatMap3D to see a successful run.
Expected behavior
The BP5 reader should be able to inspect & read variables from a BP5 file. In the above example, the output should match that from the equivalent C++ version:
At first glance, this seems to be the case of the Fortran version of this example program not being updated to call BeginStep() (as is required for BP5, but wasn't strictly necessary for BP4). Sorry about that, we'll take care of getting it updated. But to continue work with ADIOS, simply call adios2_begin_step() before adios2_inquire_variable(), OR for something more like the old semantics specify adios2_mode_readRandomAccess instead of adios2_mode_read.
(There were significant metadata scalability problems with the BP4 approach of not differentiating at the time of open() whether or not a file was going to be accessed step-by-step or in a more random way by doing set_step() on specific variables. This was one of the reasons why BP5 was developed, but when BP5 became the default, some old code that relied upon that ambiguity was necessarily invalidated.)
Describe the bug
Using the Fortran bindings and the BP5 format, the BPReader fails to read any variables from a valid BP5 file. The engine successfully opens the file but reading any valid variables fails and calling
adios2_available_variables
reports zero variables in the file. The BP4 reader works as expected.To Reproduce
The example
examples/hello/bpReader/bpReaderHeatMap3D.F90
suffers from this problem. To build & run from ADIOS source:The output from the example's write step can be verified by inspecting with
bpls build/bin/HeatMap3D_f.bp
.The MPI-enabled exe
build/bin/adios2_hello_bpReaderHeatMap3D_f_mpi
also fails.Note: these examples fail silently. Run the equivalent C++ exe
build/bin/adios2_hello_bpReaderHeatMap3D
to see a successful run.Expected behavior
The BP5 reader should be able to inspect & read variables from a BP5 file. In the above example, the output should match that from the equivalent C++ version:
Desktop (please complete the following information):
Build 1:
Build 2:
The text was updated successfully, but these errors were encountered: