ADIOS2 issueshttps://code.ornl.gov/pnb/ADIOS2/-/issues2020-03-16T20:11:14Zhttps://code.ornl.gov/pnb/ADIOS2/-/issues/2042Append mode error2020-03-16T20:11:14ZPodhorszki, NorbertAppend mode error*Created by: jychoi-hpc*
**Describe the bug**
I am working on Pixie3D to write restart files with appending mode without any success. I wrote a test case to reproduce the error.
In the test code, I am trying to write a file with ap...*Created by: jychoi-hpc*
**Describe the bug**
I am working on Pixie3D to write restart files with appending mode without any success. I wrote a test case to reproduce the error.
In the test code, I am trying to write a file with appending mode but getting an error.
When writing with `adios2_mode_write`, it works. But, a file with `adios2_mode_append` is corrupted and cannot do `bpls` (no error during the runtime though).
**To Reproduce**
Here is my test code (writer.F90)
```
program writer
use mpi
use adios2
implicit none
integer(kind=8), dimension(1) :: shape_dims, start_dims, count_dims
real, dimension(:), allocatable :: myArray
integer :: inx, irank, isize, ierr, i, var1_type
type(adios2_adios) :: adios
type(adios2_io) :: io
type(adios2_variable) :: var, var1
type(adios2_attribute) :: attr
type(adios2_engine) :: engine
character(len=:), allocatable :: var1_name
integer :: comm
integer :: istatus
real*8 :: totalpe;
CHARACTER(len=32) :: arg
integer :: mode
logical :: do_read = .false.
logical :: do_append = .false.
do i = 1, iargc()
call getarg(i, arg)
if (trim(arg)=='-read') do_read = .true.
if (trim(arg)=='-append') do_append = .true.
end do
! Launch MPI
comm = MPI_COMM_WORLD
call MPI_Init(ierr)
call MPI_Comm_rank(comm, irank, ierr)
call MPI_Comm_size(comm, isize, ierr)
! Application variables
inx = 10
allocate( myArray(inx) )
do i=1,inx
myArray(i) = i-1
end do
! Variable dimensions
shape_dims(1) = isize * inx
start_dims(1) = irank * inx
count_dims(1) = inx
if (do_append) then
print *, 'Mode: append'
mode = adios2_mode_append
else
print *, 'Mode: write'
mode = adios2_mode_write
endif
! Create adios handler passing the communicator, debug mode and error flag
call adios2_init(adios, comm, adios2_debug_mode_on, ierr)
! Declare an IO process configuration inside adios
call adios2_declare_io(io, adios, "group1", ierr)
! Defines a variable to be written in bp format
! call adios2_define_variable(var, io, 'totalpe', adios2_type_dp, ierr)
call adios2_define_variable(var1, io, "totalpe", adios2_type_dp, 1, &
(/ 1_8 /), (/ 0_8 /), (/ 1_8 /), &
adios2_constant_dims, ierr)
call adios2_define_variable(var1, io, "arr1", adios2_type_real, 1, &
shape_dims, start_dims, count_dims, &
adios2_constant_dims, ierr)
call adios2_define_attribute(attr, io, "attr", "this is attr", ierr)
! Open myVector_f.bp in write mode, this launches an engine
call adios2_open(engine, io, "out.bp", mode, comm, ierr)
print *, 'adios2_open:ierr', ierr
do i=1,4
call adios2_begin_step(engine, adios2_step_mode_append, ierr)
print *, 'adios2_begin_step:ierr', ierr
! Put myArray contents to bp buffer, based on var1 metadata
call adios2_put(engine, 'totalpe', 777D0, ierr)
call adios2_put(engine, var1, myArray, adios2_mode_sync, ierr)
! Closes engine and deallocates it, becomes unreachable
call adios2_end_step(engine, ierr)
print *, 'adios2_end_step:ierr', ierr
enddo
call adios2_close(engine, ierr)
print *, 'adios2_close:ierr', ierr
! Deallocates adios and calls its destructor
call adios2_finalize(adios, ierr)
if( allocated(myArray) ) deallocate(myArray)
if( allocated(var1_name) ) deallocate(var1_name)
call MPI_Finalize(ierr)
end program writer
```
Makefile
```
FC=mpif90
ADIOS2_DIR=/opt/adios2
ADIOS2_INC=$(shell $(ADIOS2_DIR)/bin/adios2-config --fortran-flags)
ADIOS2_LIB=$(shell $(ADIOS2_DIR)/bin/adios2-config --fortran-libs)
BINS=writer
all: $(BINS)
writer: writer.F90
$(FC) -g -ffree-line-length-0 $(ADIOS2_INC) -o $@ $? $(ADIOS2_LIB)
clean:
rm -rf $(BINS) *.o *.dSYM
```
I am running in the following step. First, I create `out.bp` with `adios2_mode_write` mode
```bash
$ ./writer
$ bpls -lva out.bp
File info:
of variables: 2
of attributes: 1
statistics: Min / Max
float arr1 4*{10} = 0 / 9
string attr attr = "this is attr"
double totalpe 4*{1} = 777 / 777
```
it works fine
Then, I am trying to do with `adios2_mode_append`:
```bash
$ ./writer -append
$ bpls -lva out.bp
$ bpls -lva out.bp/
HDF5-DIAG: Error detected in HDF5 (1.10.4) thread 0:
#000: H5F.c line 509 in H5Fopen(): unable to open file
major: File accessibilty
minor: Unable to open file
#001: H5Fint.c line 1400 in H5F__open(): unable to open file
major: File accessibilty
minor: Unable to open file
#002: H5Fint.c line 1700 in H5F_open(): unable to read superblock
major: File accessibilty
minor: Read failed
```
It should be `BP4` file, not HDF5. It looks like the file corrupted.
Any help and advice will be appreciated.
Thanks.
2.6.0 Production Releasehttps://code.ornl.gov/pnb/ADIOS2/-/issues/2040Cannot run bp4dbg2020-03-16T11:54:05ZPodhorszki, NorbertCannot run bp4dbg*Created by: pnorbert*
**Describe the bug**
After installing adios2, I cannot run the bp4dbg utility because it fails with this error:
```
$ /opt/adios2/bin/bp4dbg localArray.bp/md.0
=================================================...*Created by: pnorbert*
**Describe the bug**
After installing adios2, I cannot run the bp4dbg utility because it fails with this error:
```
$ /opt/adios2/bin/bp4dbg localArray.bp/md.0
========================================================
Metadata File: localArray.bp/md.0
========================================================
Traceback (most recent call last):
File "/opt/adios2/bin/bp4dbg", line 105, in <module>
DumpMetadataFiles(args)
File "/opt/adios2/bin/bp4dbg", line 81, in DumpMetadataFiles
DumpMetaData(fname)
File "/opt/adios2/lib/python3/dist-packages/adios2/bp4dbg/metadata.py", line 607, in DumpMetaData
status = bp4dbg_utils.ReadHeader(f, fileSize, "Metadata")
NameError: name 'bp4dbg_utils' is not defined
```
**Additional context**
The bp4dbg scripts use bp4dbg_utils._FunctionName()_ to call the utility functions but they import them as
`from .utils import *`
The function calls cannot just be simply renamed to _FunctionName()_ because there will be clashes with other functions:
```
Traceback (most recent call last):
File "/opt/adios2/bin/bp4dbg", line 105, in <module>
DumpMetadataFiles(args)
File "/opt/adios2/bin/bp4dbg", line 81, in DumpMetadataFiles
DumpMetaData(fname)
File "/opt/adios2/lib/python3/dist-packages/adios2/bp4dbg/metadata.py", line 607, in DumpMetaData
status = ReadHeader(f, fileSize, "Metadata")
TypeError: ReadHeader() takes 1 positional argument but 3 were given
```
https://code.ornl.gov/pnb/ADIOS2/-/issues/2018C-Blosc: Support for Large Vars2020-03-06T13:35:49ZPodhorszki, NorbertC-Blosc: Support for Large Vars*Created by: ax3l*
**Describe the bug**
Writing for individual variables with c-blosc (1) that write very large data fails, since c-blosc has a 2Gbyte limit.
**To Reproduce**
Based on #2010, use this diff
```diff
diff --git a/t...*Created by: ax3l*
**Describe the bug**
Writing for individual variables with c-blosc (1) that write very large data fails, since c-blosc has a 2Gbyte limit.
**To Reproduce**
Based on #2010, use this diff
```diff
diff --git a/testing/adios2/performance/largevar/TestLargeVarWrite.cpp b/testing/adios2/performance/largevar/TestLargeVarWrite.cpp
index 59d4ccad..4c1acef6 100644
--- a/testing/adios2/performance/largevar/TestLargeVarWrite.cpp
+++ b/testing/adios2/performance/largevar/TestLargeVarWrite.cpp
@@ -4,6 +4,7 @@
*/
#include <memory>
+#include <random>
#include <stdexcept>
#include <string>
@@ -29,6 +30,11 @@ TEST_F(Write, Plain1D_1B)
std::unique_ptr<float[]> dataBig(new float[Nx]);
+ auto const seed = std::random_device{}();
+ std::default_random_engine gen{ seed };
+ std::uniform_real_distribution< float > dist( 0.0f, 1.0f );
+ std::generate_n( dataBig.get(), Nx, [&]{ return dist( gen ); } );
+
#ifdef ADIOS2_HAVE_MPI
MPI_Comm_rank(MPI_COMM_WORLD, &mpiRank);
MPI_Comm_size(MPI_COMM_WORLD, &mpiSize);
@@ -53,6 +59,17 @@ TEST_F(Write, Plain1D_1B)
auto varBig = io.DefineVariable<float>("varBig", shape, start, count,
adios2::ConstantDims);
+ // add operations
+ adios2::Operator BloscOp =
+ adios.DefineOperator("BloscCompressor", adios2::ops::LosslessBlosc);
+
+ varBig.AddOperation(BloscOp,
+ {{adios2::ops::blosc::key::compressor, "zstd"}});
+ varBig.AddOperation(BloscOp,
+ {{adios2::ops::blosc::key::clevel, "1"}});
+ varBig.AddOperation(BloscOp,
+ {{adios2::ops::blosc::key::doshuffle, "BLOSC_BITSHUFFLE"}});
+ // FIXME how to set the compressor threads?
adios2::Engine writer = io.Open(fname, adios2::Mode::Write);
```
And execute. Repeat with a smaller array size in `Nx`, e.g. divide by `4`.
**Expected behavior**
The size of the variable should not matter for the operation.
**Desktop (please complete the following information):**
- OS/Platform: Ubuntu 18.04
- Build: gcc 7.4.0, cmake 3.16.2
**Additional context**
Using threaded c-blosc compression with arbitrary variable sizes is our [production ADIOS1 workflow](https://arxiv.org/abs/1706.00522) in PIConGPU.
In ADIOS1, we added a custom-header to split up the user-input into chunks not larger than the maximum supported size in blosc: https://github.com/ornladios/ADIOS/pull/135 (This probably also affects other compressors.)
Probably even better, we can also switch directly to [c-blosc2 that has 64bit buffer support](https://github.com/Blosc/c-blosc2/issues/72).
**Following up**
Fixing this should complete the feature request in #1486.
cc @chuckatkins @pnorbert and @psychocoderHPC @franzpoeschel
https://code.ornl.gov/pnb/ADIOS2/-/issues/1953Memory selection and compression leads to corrupt data2020-02-13T15:44:25ZPodhorszki, NorbertMemory selection and compression leads to corrupt data*Created by: pnorbert*
**Describe the bug**
When using SetMemorySelection for a pointer and use SZ compression in the gray-scott example, the data is corrupt.
**To Reproduce**
Use gray-scott, change the settings-files.json.
` ...*Created by: pnorbert*
**Describe the bug**
When using SetMemorySelection for a pointer and use SZ compression in the gray-scott example, the data is corrupt.
**To Reproduce**
Use gray-scott, change the settings-files.json.
` "adios_memory_selection": true,`
Add SZ compression to the SimulationOutput in adios2.xml
```
$ mpirun -n 4 adios2-gray-scott settings-files.json
$ mpirun -n 1 python3 gsplot.py -i gs.bp
```
**Additional context**
The settings-staging.json is using mem selection and if I use compression in staging, the same error shows up.
2.6.0 Production Releasehttps://code.ornl.gov/pnb/ADIOS2/-/issues/1906Reading a file with many subfiles fails2020-03-02T12:01:51ZPodhorszki, NorbertReading a file with many subfiles fails*Created by: pnorbert*
I thought this was addressed before but I don't find an issue for it.
I have an XGC output with 1024 subfiles on a KNL machine. Trying to bpls dump a variable that is written from all processes fails when openin...*Created by: pnorbert*
I thought this was addressed before but I don't find an issue for it.
I have an XGC output with 1024 subfiles on a KNL machine. Trying to bpls dump a variable that is written from all processes fails when opening too many subfiles.
```
$ bpls -l xgc.restart.00006.bp/ -d inum_arr -n 16
int32_t inum_arr {1024} = 2293 / 4061532
bpls caught an exception
ERROR: couldn't open file xgc.restart.00006.bp/data.1019, check permissions or path existence, in call to POSIX open
$ ls -l xgc.restart.00006.bp/data.1019
-rw-r----- 1 n55002 gn55 321625842 Dec 18 11:50 xgc.restart.00006.bp/data.1019
```
`$ bp4dbg.py xgc.restart.00006.bp/data.1019` dumps a perfectly fine data file.
https://code.ornl.gov/pnb/ADIOS2/-/issues/1862Python SST BeginStep segmentation fault / hang with timeout other than -1 or 02019-11-09T14:28:56ZPodhorszki, NorbertPython SST BeginStep segmentation fault / hang with timeout other than -1 or 0*Created by: suchyta1*
I've been running into some errors when I try to read using SST from Python and the timeout parameter is set to something other than -1 or 0. To reproduce the behavior, I wrote a simple writer/reader pair, include...*Created by: suchyta1*
I've been running into some errors when I try to read using SST from Python and the timeout parameter is set to something other than -1 or 0. To reproduce the behavior, I wrote a simple writer/reader pair, included below.
With the timeout of 0.5 and ADIOS 2.4.0, ADIOS 2.5.0, or newer, I get a segmentation fault or a reader hang when I run on my Mac or Ubuntu virtual machine. Based on the print statements, the reader is hanging or segmentation faulting inside the BeginStep() call. (Sometimes, the job will run fine, but not reliably.) As far as I can tell, if I change the timeout to -1 or 0.0, it runs fine.
I'm not sure if there's an issue from any other of the bindings. I haven't noticed it if there is, but I haven't exhaustively tested.
## writer.py
```
#!/usr/bin/env python
from mpi4py import MPI
import adios2
import numpy as np
import time
import sys
if __name__ == "__main__":
tmp = np.ones(10)
comm = MPI.COMM_WORLD
adios = adios2.ADIOS(comm, adios2.DebugON)
io = adios.DeclareIO("test")
io.SetEngine('SST')
io.SetParameter('RendezvousReaderCount', '1')
io.SetParameter("QueueLimit", "1")
io.SetParameter("QueueFullPolicy", "Discard")
io.DefineVariable("t", tmp, [10], [10], [10])
time.sleep(1)
engine = io.Open("test.bp", adios2.Mode.Write, comm)
for i in range(10):
engine.BeginStep()
v = io.InquireVariable("t")
engine.Put(v, tmp)
engine.EndStep()
print("Wrote Step:", i); sys.stdout.flush()
time.sleep(1)
engine.Close()
```
## reader.py
```
#!/usr/bin/env python
from mpi4py import MPI
import adios2
import numpy as np
import time
import sys
if __name__ == "__main__":
comm = MPI.COMM_WORLD
adios = adios2.ADIOS(comm, adios2.DebugON)
io = adios.DeclareIO("test")
io.SetEngine('SST')
"""
io.SetParameter('RendezvousReaderCount', '0')
io.SetParameter("QueueLimit", "1")
io.SetParameter("QueueFullPolicy", "Discard")
"""
engine = io.Open("test.bp", adios2.Mode.Read, comm)
while True:
print("Read begin step"); sys.stdout.flush()
StepStatus = engine.BeginStep(adios2.StepMode.Read, 0.5)
print("Done read begin step"); sys.stdout.flush()
if StepStatus == adios2.StepStatus.EndOfStream:
print("Done looping"); sys.stdout.flush()
break
elif StepStatus == adios2.StepStatus.OK:
print("Read found step:", engine.CurrentStep(), "\n"); sys.stdout.flush()
engine.EndStep(); sys.stdout.flush()
elif StepStatus == adios2.StepStatus.NotReady:
print("Not ready\n"); sys.stdout.flush()
continue
elif StepStatus == adios2.StepStatus.OtherError:
print("Other"); sys.stdout.flush()
break
engine.Close()
```
## job.sh
```
mpirun -n 1 ./writer.py &
mpirun -n 1 ./reader.py &
wait
```
## Example of the error output, from the virtual machine
```
Read begin step
Wrote Step: 0
Done read begin step
Read found step: 0
Read begin step
Done read begin step
Not ready
Read begin step
Wrote Step: 1
Done read begin step
Read found step: 1
Read begin step
Done read begin step
Not ready
Read begin step
Wrote Step: 2
[adiosVM:03069] *** Process received signal ***
[adiosVM:03069] Signal: Segmentation fault (11)
[adiosVM:03069] Signal code: Address not mapped (1)
[adiosVM:03069] Failing at address: 0x38
[adiosVM:03069] [ 0] /lib/x86_64-linux-gnu/libpthread.so.0(+0x11390)[0x7fdb2ac50390]
[adiosVM:03069] [ 1] /opt/adios2/lib/libadios2_cmselect.so(+0x1db0)[0x7fdb0cac3db0]
[adiosVM:03069] [ 2] /opt/adios2/lib/libadios2_cmselect.so(libcmselect_LTX_remove_periodic+0x19)[0x7fdb0cac3e59]
[adiosVM:03069] [ 3] /opt/adios2/lib/libadios2_evpath.so(INT_CMremove_task+0x20)[0x7fdb19009400]
[adiosVM:03069] [ 4] /opt/adios2/lib/libadios2_evpath.so(CMremove_task+0x28)[0x7fdb1901d248]
[adiosVM:03069] [ 5] /opt/adios2/lib/libadios2_sst.so.2(+0xe3da)[0x7fdb1a1f13da]
[adiosVM:03069] [ 6] /opt/adios2/lib/libadios2_sst.so.2(SstAdvanceStep+0x3a6)[0x7fdb1a1f3406]
[adiosVM:03069] [ 7] /opt/adios2/lib/libadios2.so.2(_ZN6adios24core6engine9SstReader9BeginStepENS_8StepModeEf+0x12f)[0x7fdb1ac3d56f]
[adiosVM:03069] [ 8] /opt/adios2/lib/python3.5/site-packages/adios2.cpython-35m-x86_64-linux-gnu.so(+0x29903)[0x7fdb1cc2b903]
[adiosVM:03069] [ 9] /opt/adios2/lib/python3.5/site-packages/adios2.cpython-35m-x86_64-linux-gnu.so(+0x3fe9b)[0x7fdb1cc41e9b]
[adiosVM:03069] [10] /opt/adios2/lib/python3.5/site-packages/adios2.cpython-35m-x86_64-linux-gnu.so(+0x16ca3)[0x7fdb1cc18ca3]
[adiosVM:03069] [11] python(PyCFunction_Call+0x77)[0x4ea117]
[adiosVM:03069] [12] python(PyEval_EvalFrameEx+0x5a36)[0x529816]
[adiosVM:03069] [13] python[0x52d2b9]
[adiosVM:03069] [14] python(PyEval_EvalCode+0x1f)[0x52dfbf]
[adiosVM:03069] [15] python[0x5fc652]
[adiosVM:03069] [16] python(PyRun_FileExFlags+0x9a)[0x5feafa]
[adiosVM:03069] [17] python(PyRun_SimpleFileExFlags+0x1bc)[0x5fecec]
[adiosVM:03069] [18] python(Py_Main+0x456)[0x63ec96]
[adiosVM:03069] [19] python(main+0xe1)[0x4d02e1]
[adiosVM:03069] [20] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0)[0x7fdb2a895830]
[adiosVM:03069] [21] python(_start+0x29)[0x5d4b99]
[adiosVM:03069] *** End of error message ***
--------------------------------------------------------------------------
mpirun noticed that process rank 0 with PID 3069 on node adiosVM exited on signal 11 (Segmentation fault).
--------------------------------------------------------------------------
Wrote Step: 3
Wrote Step: 4
Wrote Step: 5
Wrote Step: 6
Wrote Step: 7
Wrote Step: 8
Wrote Step: 9
```
## Hanging looks similar
```
Read begin step
Wrote Step: 0
Done read begin step
Read found step: 0
Read begin step
Done read begin step
Not ready
Read begin step
Wrote Step: 1
Done read begin step
Read found step: 1
Read begin step
Done read begin step
Not ready
Read begin step
Wrote Step: 2
Done read begin step
Read found step: 2
Read begin step
Done read begin step
Not ready
Read begin step
Wrote Step: 3
Done read begin step
Read found step: 3
Read begin step
Done read begin step
Not ready
Read begin step
Done read begin step
Not ready
Read begin step
Wrote Step: 4
Done read begin step
Read found step: 4
Read begin step
Done read begin step
Not ready
Read begin step
Wrote Step: 5
Done read begin step
Read found step: 5
Read begin step
Done read begin step
Not ready
Read begin step
Wrote Step: 6
Done read begin step
Read found step: 6
Read begin step
Done read begin step
Not ready
Read begin step
Wrote Step: 7
Done read begin step
Read found step: 7
Read begin step
Done read begin step
Not ready
Read begin step
Wrote Step: 8
Wrote Step: 9
```
@eisenhauer Eisenhauer, GregEisenhauer, Greghttps://code.ornl.gov/pnb/ADIOS2/-/issues/1848MGARD Decompression with s parameter is incorrect2019-10-31T15:19:52ZPodhorszki, NorbertMGARD Decompression with s parameter is incorrect*Created by: NAThompson*
**Describe the bug**
When MGARD is compressed with a certain value of `s` for the Besov s-norm, it must be decompressed with the exact same value of `s`, or else the decompressed values are completely wrong.
...*Created by: NAThompson*
**Describe the bug**
When MGARD is compressed with a certain value of `s` for the Besov s-norm, it must be decompressed with the exact same value of `s`, or else the decompressed values are completely wrong.
**To Reproduce**
The ADIOS2 wrapper always uses the `s`-parameter to compress; see [here](https://github.com/ornladios/ADIOS2/blob/master/source/adios2/operator/compress/CompressMGARD.cpp#L103
).
However, it never uses the `s`-parameter to decompress, see [here](https://github.com/ornladios/ADIOS2/blob/master/source/adios2/operator/compress/CompressMGARD.cpp#L146).
I regard this as very low-priority, since MGARD is considering storing `s` in the compressed stream; see [here](https://github.com/CODARcode/MGARD/issues/37).
https://code.ornl.gov/pnb/ADIOS2/-/issues/1738Error build ADIOS2 2.4.1, unknown type name 'INT4'2019-09-28T12:45:09ZPodhorszki, NorbertError build ADIOS2 2.4.1, unknown type name 'INT4'*Created by: ChrocheMisawa*
Hi guys, I'm new to ADIOS2,
When I tried to install ADIOS2, I got error making the package, I wonder why it is happening(2nd picture) and how do I solve it?
the system is WSL2
Thanks very much!
Chen
...*Created by: ChrocheMisawa*
Hi guys, I'm new to ADIOS2,
When I tried to install ADIOS2, I got error making the package, I wonder why it is happening(2nd picture) and how do I solve it?
the system is WSL2
Thanks very much!
Chen
![) {62B$N{4 AY_$Q(4 3$H](https://user-images.githubusercontent.com/47645670/64903737-48ffcd00-d68c-11e9-8e0a-144a490a99a6.png)
![image](https://user-images.githubusercontent.com/47645670/64903745-574de900-d68c-11e9-9a03-fdcdfd0ac481.png)
2.5.0 Production ReleaseEisenhauer, GregEisenhauer, Greghttps://code.ornl.gov/pnb/ADIOS2/-/issues/1688Block selection issue when one step does not have any block2019-10-15T23:48:38ZPodhorszki, NorbertBlock selection issue when one step does not have any block*Created by: pnorbert*
`ERROR: invalid blockID 0 from steps start 2 in variable v3, check argument to Variable<T>::SetBlockID, in call to Get`
The issue shows up in the next step where the variable appears again.
The examples/bas...*Created by: pnorbert*
`ERROR: invalid blockID 0 from steps start 2 in variable v3, check argument to Variable<T>::SetBlockID, in call to Get`
The issue shows up in the next step where the variable appears again.
The examples/basics/localArray example shows this bug if the writer code is forced to omit writing a variable (v3) in step 2 in `localArray_write.cpp:166-169`
```
if (step == 2)
{
chance = 0;
}
```
This will result in v3 missing in step 2:
```
$ bpls -l localArray.bp/ -D v3
double v3 4*[__]*{__} = 0 / 3.4
step 0:
block 0: [0:8] = 0 / 0
step 1:
block 0: [0:5] = 0.1 / 0.1
block 1: [0:6] = 1.1 / 1.1
step 3:
block 0: [0:9] = 1.3 / 1.3
step 4:
block 0: [0:5] = 0.4 / 0.4
block 1: [0:5] = 1.4 / 1.4
block 2: [0:5] = 3.4 / 3.4
```
Then the read example fails when getting variable v3 in step 3.
```
$ ./bin/localArray_read
Process step 0:
...
Process step 2:
v0 has 4 blocks in step 2
block 0 size = "6" offset = "" : 0.2 0.2 0.2 0.2 0.2 0.2
block 1 size = "6" offset = "" : 1.2 1.2 1.2 1.2 1.2 1.2
block 2 size = "6" offset = "" : 2.2 2.2 2.2 2.2 2.2 2.2
block 3 size = "6" offset = "" : 3.2 3.2 3.2 3.2 3.2 3.2
v1 has 4 blocks in step 2
block 0 size = "6" offset = "" : 0.2 0.2 0.2 0.2 0.2 0.2
block 1 size = "10" offset = "" : 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
block 2 size = "5" offset = "" : 2.2 2.2 2.2 2.2 2.2
block 3 size = "10" offset = "" : 3.2 3.2 3.2 3.2 3.2 3.2 3.2 3.2 3.2 3.2
v2 has 4 blocks in step 2
block 0 size = "6" offset = "" : 0.2 0.2 0.2 0.2 0.2 0.2
block 1 size = "7" offset = "" : 1.2 1.2 1.2 1.2 1.2 1.2 1.2
block 2 size = "9" offset = "" : 2.2 2.2 2.2 2.2 2.2 2.2 2.2 2.2 2.2
block 3 size = "10" offset = "" : 3.2 3.2 3.2 3.2 3.2 3.2 3.2 3.2 3.2 3.2
Variable v3 not found in step 2
Process step 3:
v0 has 4 blocks in step 3
block 0 size = "6" offset = "" : 0.3 0.3 0.3 0.3 0.3 0.3
block 1 size = "6" offset = "" : 1.3 1.3 1.3 1.3 1.3 1.3
block 2 size = "6" offset = "" : 2.3 2.3 2.3 2.3 2.3 2.3
block 3 size = "6" offset = "" : 3.3 3.3 3.3 3.3 3.3 3.3
v1 has 4 blocks in step 3
block 0 size = "6" offset = "" : 0.3 0.3 0.3 0.3 0.3 0.3
block 1 size = "10" offset = "" : 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3
block 2 size = "5" offset = "" : 2.3 2.3 2.3 2.3 2.3
block 3 size = "10" offset = "" : 3.3 3.3 3.3 3.3 3.3 3.3 3.3 3.3 3.3 3.3
v2 has 4 blocks in step 3
block 0 size = "5" offset = "" : 0.3 0.3 0.3 0.3 0.3
block 1 size = "10" offset = "" : 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3 1.3
block 2 size = "7" offset = "" : 2.3 2.3 2.3 2.3 2.3 2.3 2.3
block 3 size = "9" offset = "" : 3.3 3.3 3.3 3.3 3.3 3.3 3.3 3.3 3.3
v3 has 1 blocks in step 3
Invalid argument exception, STOPPING PROGRAM
ERROR: invalid blockID 0 from steps start 2 in variable v3, check argument to Variable<T>::SetBlockID, in call to Get
```
Note: This reading example uses BeginStep/EndStep to step through the steps, so no SetStepSelection() is used here.
Note: The bug appears with both BP3 and BP4 engines.
2.6.0 Production Releasehttps://code.ornl.gov/pnb/ADIOS2/-/issues/1644Missing reading global values in Python high-level API2019-09-03T18:11:13ZPodhorszki, NorbertMissing reading global values in Python high-level API*Created by: williamfgc*
*Created by: williamfgc*
2.5.0 Production Releasehttps://code.ornl.gov/pnb/ADIOS2/-/issues/1639BP4 streaming and Local arrays lead to exception2019-09-03T18:08:31ZPodhorszki, NorbertBP4 streaming and Local arrays lead to exception*Created by: pnorbert*
When new steps are found in BP4 streams, something goes wrong with the processing.
```
C++ exception with description "ERROR: invalid blockID 1 from steps start 0 in variable i8, check argument to Variable<T>...*Created by: pnorbert*
When new steps are found in BP4 streams, something goes wrong with the processing.
```
C++ exception with description "ERROR: invalid blockID 1 from steps start 0 in variable i8, check argument to Variable<T>::SetBlockID, in call to Get
```
To reproduce:
- Enable Staging.*.Local.BPS tests
in testing/adios2/engine/staging-common/CMakeLists.txt, line 233, comment out:
`list (FILTER BP4_STREAM_TESTS EXCLUDE REGEX ".*Local.BPS$")`
- Add some sleeptime (100ms) in testing/adios2/engine/staging-common/TestCommonWriteLocal.cpp
```
#include <thread>
...
std::this_thread::sleep_for(std::chrono::milliseconds(100));
engine.BeginStep();
```
- run ctest
```
$ ctest -R Staging.*.Local.BPS.BP4_stream
Test project /home/adios/work/ADIOS2/build.master
Start 610: Staging.1x1.Local.BPS.BP4_stream
1/5 Test #610: Staging.1x1.Local.BPS.BP4_stream ...***Failed 3.27 sec
Start 626: Staging.2x1.Local.BPS.BP4_stream
2/5 Test #626: Staging.2x1.Local.BPS.BP4_stream ...***Failed 3.36 sec
Start 627: Staging.1x2.Local.BPS.BP4_stream
3/5 Test #627: Staging.1x2.Local.BPS.BP4_stream ...***Failed 2.30 sec
Start 628: Staging.3x5.Local.BPS.BP4_stream
4/5 Test #628: Staging.3x5.Local.BPS.BP4_stream ...***Failed 1.69 sec
Start 629: Staging.5x3.Local.BPS.BP4_stream
5/5 Test #629: Staging.5x3.Local.BPS.BP4_stream ...***Failed 2.16 sec
0% tests passed, 5 tests failed out of 5
```
- run single test
```
rm -rf local.bp; mpirun -n 5 ./bin/TestCommonWriteLocal bp4 local : -n 3 ./bin/TestCommonReadLocal bp4 local OpenTimeoutSecs:2.0008
```2.5.0 Production Releasehttps://code.ornl.gov/pnb/ADIOS2/-/issues/1615Large number of data races in unit tests2019-07-30T18:23:35ZPodhorszki, NorbertLarge number of data races in unit tests*Created by: NAThompson*
In preparation for parallel reads, I added the following to the `CMakeLists.txt` and ran the unit tests:
```
if(CMAKE_BUILD_TYPE MATCHES "Debug")
if(CMAKE_CXX_COMPILER_ID MATCHES "^(AppleClang|Clang|GNU)"...*Created by: NAThompson*
In preparation for parallel reads, I added the following to the `CMakeLists.txt` and ran the unit tests:
```
if(CMAKE_BUILD_TYPE MATCHES "Debug")
if(CMAKE_CXX_COMPILER_ID MATCHES "^(AppleClang|Clang|GNU)")
set(CMAKE_CXX_FLAGS_DEBUG "-Wall -g -O2 -Wfatal-errors -fsanitize=thread -fno-omit-frame-pointer")
endif()
endif()
```
A very large number of race conditions were detected. A few were in `pthread_create`, which arguably is bad, but not the bailiwick of ADIOS. But a large number of them are originating in ADIOS2. I have attached just one of these here, but many tests are afflicted by these problems.
[race.txt](https://github.com/ornladios/ADIOS2/files/3402662/race.txt)
https://code.ornl.gov/pnb/ADIOS2/-/issues/1565Static build for ADIOS2 on Summit: Enet not found error during installion2019-07-19T18:35:24ZPodhorszki, NorbertStatic build for ADIOS2 on Summit: Enet not found error during installion*Created by: swatisgupta*
@eisenhauer
Hi,
The static build for ADIOS2 failed to install on Summit after compilation - It fails to find Enet. I used GNU compilers version 6.4.0. The output from make install can be found below.
...*Created by: swatisgupta*
@eisenhauer
Hi,
The static build for ADIOS2 failed to install on Summit after compilation - It fails to find Enet. I used GNU compilers version 6.4.0. The output from make install can be found below.
make install
[ 4%] Built target adios2sys_objects
[ 6%] Built target atl
[ 11%] Built target dill
[ 21%] Built target ffs
[ 22%] Built target docs
[ 26%] Built target enet
[ 37%] Built target EVPath
[ 38%] Built target cmudp
[ 39%] Built target cmselect
[ 40%] Built target cmsockets
[ 41%] Built target cmenet
[ 42%] Built target cmmulticast
[ 43%] Built target cmib
[ 44%] Built target taustubs
[ 48%] Built target sst
[ 81%] Built target adios2
[ 82%] Built target sst_conn_tool
[ 84%] Built target adios_reorganize
[ 85%] Built target bpls
[ 88%] Built target adios_iotest
[100%] Built target adios2_f
Install the project...
-- Install configuration: "Release"
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/common/ADIOSConfig.h
Pre-installation cleanup of CMake files
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/CMakeFindDependencyMacro.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindBZip2.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindBlosc.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindCrayDRC.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindHDF5.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindLIBFABRIC.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindMGARD.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindMPI.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindPkgConfig.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindPythonFull.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindPythonModule.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindSZ.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindZFP.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/FindZeroMQ.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindBZip2.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindHDF5.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI/fortranparam_mpi.f90.in
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI/libver_mpi.c
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI/libver_mpi.f90.in
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI/mpiver.f90.in
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI/test_mpi.c
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI/test_mpi.cxx
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI/test_mpi.f90.in
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindMPI/test_mpi_c.cxx
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/FindPkgConfig.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/GoogleTest.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/upstream/CMakeFindDependencyMacro.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_atl.a
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/atl-config.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/atl-config-version.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/atl-targets.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/atl-targets-release.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_dill.a
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/dill-config-common.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/dill-config-version.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/dill-config.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/dill-targets.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/dill-targets-release.cmake
-- Up-to-date: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/FindBinUtils.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/FindLibFFI.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_ffs.a
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/ffs-config.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/ffs-config-version.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/ffs-targets.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/ffs-targets-release.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_enet.a
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/enet-config.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/enet-config-version.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/enet-targets.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/enet-targets-release.cmake
-- Up-to-date: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/FindCERCSProject.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/FindIBVERBS.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/FindLIBFABRIC.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/FindNNTI.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/FindNVML.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/FindPkgConfig.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/upstream
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/upstream/FindPkgConfig.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_evpath.a
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_cmselect.so
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_cmsockets.so
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_cmudp.so
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_cmmulticast.so
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_cmenet.so
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_cmib.so
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/EVPathTargets.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/EVPathTargets-release.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/EVPathConfigCommon.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/EVPathConfigVersion.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/EVPathConfig.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/common/ADIOSMacros.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/common/ADIOSTypes.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/common/ADIOSTypes.inl
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2.a
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libtaustubs.a
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/toolkit/sst/SSTConfig.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_sst.a
-- Installing: /ccs/home/ssinghal/ADIOS2-install/bin/sst_conn_tool
-- Installing: /ccs/home/ssinghal/ADIOS2-install/bin/bpls
-- Installing: /ccs/home/ssinghal/ADIOS2-install/bin/adios_reorganize
-- Installing: /ccs/home/ssinghal/ADIOS2-install/bin/adios_iotest
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/coupling2.xml
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/coupling2_blocking_01_simple.txt
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/coupling2_blocking_02_dump_result.txt
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/pipe2.xml
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/pipe2_01_simple.txt
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/pipe2_02_link.txt
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/pipe2_03_conditional.txt
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/pipe2_04_nonblocking.txt
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/pipe2_05_add_variables.txt
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/wf_2_to_1.txt
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/wf_2_to_1.xml
-- Installing: /ccs/home/ssinghal/ADIOS2-install/share/iotest-config/pipe2_06_busy.txt
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/libadios2_f.a
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_engine_begin_step_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_parameters_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_functions_allocate_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_io_open_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_io_define_attribute_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_operator_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_functions_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_attribute_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_adios_init_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_variable_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_variable_min_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_io_define_variable_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_attribute_data_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_engine_put_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_variable_max_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_engine_get_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_adios_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_io_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2_engine_mod.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/fortran/adios2.mod
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2_c.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/c/adios2_c_types.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/c/adios2_c_adios.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/c/adios2_c_io.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/c/adios2_c_variable.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/c/adios2_c_attribute.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/c/adios2_c_engine.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/c/adios2_c_operator.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/cxx11/fstream/ADIOS2fstream.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/cxx11/ADIOS.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/cxx11/ADIOS.inl
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/cxx11/IO.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/cxx11/Variable.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/cxx11/Attribute.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/cxx11/Engine.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/cxx11/Operator.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/include/adios2/cxx11/Types.h
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/adios2-config-version.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/adios2-config-common.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/adios2-targets.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/adios2-targets-release.cmake
-- Installing: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/adios2-config.cmake
/tmp/tmp.bSbXtooDsS ~/ADIOS2/build
Configuring adios2-config dummy CMake project
-- The C compiler identification is GNU 6.4.0
-- The CXX compiler identification is GNU 6.4.0
-- Check for working C compiler: /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpicc
-- Check for working C compiler: /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpicc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpicxx
-- Check for working CXX compiler: /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpicxx -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- The Fortran compiler identification is GNU 6.4.0
-- Check for working Fortran compiler: /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpif90
-- Check for working Fortran compiler: /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpif90 -- works
-- Detecting Fortran compiler ABI info
-- Detecting Fortran compiler ABI info - done
-- Checking whether /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpif90 supports Fortran 90
-- Checking whether /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpif90 supports Fortran 90 -- yes
-- Found MPI_C: /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpicc (found version "3.1")
-- Found MPI_CXX: /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpicxx (found version "3.1")
-- Found MPI_Fortran: /autofs/nccs-svm1_sw/summit/.swci/1-compute/opt/spack/20180914/linux-rhel7-ppc64le/gcc-6.4.0/spectrum-mpi-10.3.0.0-20190419-4um5hjogm3tepg4xe23hrptlrs2y7ez6/bin/mpif90 (found version "3.1")
-- Found MPI: TRUE (found version "3.1")
-- Found atl: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/atl-config.cmake (found suitable version "2.2.1", minimum required is "2.2.1")
-- Found PkgConfig: /usr/bin/pkg-config (found version "0.27.1")
-- Checking for module 'libffi'
-- Found libffi, version 3.0.13
-- Found LibFFI: -lffi
-- Found dill: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/dill-config.cmake (found version "2.4.0")
-- Found ffs: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/ffs-config.cmake (found suitable version "1.6.0", minimum required is "1.6.0")
-- Found EVPath: /ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/EVPathConfigCommon.cmake (found version "4.4.0")
CMake Error at /autofs/nccs-svm1_sw/summit/.swci/0-core/opt/spack/20180914/linux-rhel7-ppc64le/gcc-4.8.5/cmake-3.14.2-3zkrrk4chuq6wfhvxpmen2gzdpaoiorw/share/cmake-3.14/Modules/CMakeFindDependencyMacro.cmake:48 (find_package):
**Found package configuration file:
/ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/thirdparty/EVPathConfig.cmake
but it set EVPath_FOUND to FALSE so package "EVPath" is considered to be
NOT FOUND. Reason given by package:
The following imported targets are referenced, but are missing: enet::enet**
Call Stack (most recent call first):
/ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/adios2-config-common.cmake:57 (find_dependency)
/ccs/home/ssinghal/ADIOS2-install/lib64/cmake/adios2/adios2-config.cmake:29 (include)
CMakeLists.txt:5 (find_package)
-- Configuring incomplete, errors occurred!
See also "/tmp/tmp.bSbXtooDsS/CMakeFiles/CMakeOutput.log".
FailedEisenhauer, GregEisenhauer, Greghttps://code.ornl.gov/pnb/ADIOS2/-/issues/1540Python bindings behave poorly with long-running C++ calls2019-06-24T15:34:46ZEisenhauer, GregPython bindings behave poorly with long-running C++ callsThis is a a follow-on to issue #1491. The generic problem is that Python wants to handle interrupt behaviour like ^C in its own way. To that end, it installs its own signal handlers, and rather than interrupting a long running native C...This is a a follow-on to issue #1491. The generic problem is that Python wants to handle interrupt behaviour like ^C in its own way. To that end, it installs its own signal handlers, and rather than interrupting a long running native C++ call it will catch the signal and then not run a handler until the C++ call returns and Python is once again in control. This means that ADIOS2 calls that can block for long periods of time (which are not uncommon in staging) are essentially uninterruptible and difficult to kill, perhaps requiring a "kill -9" on Linux or its equivalent. While #1491 was about SST reader-side open behaviour, the same thing can occur in any staging method whose reader-side doesn't time-out, where writer-side requires a rendezvous on open (RendezvousReaderCount>=1 in SST, where BeginStep can block indefinitely, where writer Close() must block until data is drained, etc. One approach to addressing this would be to modify the Python bindings to use a small timeout on things like reader-side Open(), then calling Open() in a Python-level loop until it succeeds or reaches the longer timeout value. This would allow a ^C to interrupt and Python to handle it. However, this technique is not applicable to other situations (writer-side Open(), Close() blocking, etc.). So the broader problem might require a different approach.https://code.ornl.gov/pnb/ADIOS2/-/issues/1481failure on building ADIOS22019-10-15T23:40:04ZPodhorszki, Norbertfailure on building ADIOS2*Created by: tongshu83*
I failed to build ADIOS2 in bebop. Could you please help check the issue? Thank you very much!
The building procedure is as follows.
module unload intel-mkl/2017.3.196-v7uuj6z
module load intel/17.0.4-74uvhj...*Created by: tongshu83*
I failed to build ADIOS2 in bebop. Could you please help check the issue? Thank you very much!
The building procedure is as follows.
module unload intel-mkl/2017.3.196-v7uuj6z
module load intel/17.0.4-74uvhji
module load intel-mpi/2017.3-dfphq6k
module load libpsm2/10.3-17
module load cmake/3.12.2-4zllpyo
module load jdk/8u141-b15-mopj6qr
module load tcl/8.6.6-x4wnbsg
module load bzip2/1.0.6-hcvyuh5
module load zlib/1.2.11-6632jqd
export ROOT=$PWD/install
mkdir -pv $ROOT
rm -fv Anaconda3-2019.03-Linux-x86_64.sh
wget -q https://repo.anaconda.com/archive/Anaconda3-2019.03-Linux-x86_64.sh
sh Anaconda3-2019.03-Linux-x86_64.sh -b -p $ROOT/anaconda3
export PATH=$ROOT/anaconda3/bin:$PATH
conda create -n codar python=3.7
export CONDA_HOME=$ROOT/anaconda3
export PATH=$CONDA_HOME/envs/codar/bin:$PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CONDA_HOME/envs/codar/lib
git clone https://github.com/ornladios/ADIOS2.git
cd ADIOS2
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=$ROOT/adios2 ..
make -j8
...
[ 68%] Building Fortran object testing/adios2/engine/staging-common/CMakeFiles/TestCommonRead_f.dir/TestCommonReadF.F90.o
/lcrc/project/PACC/tong/HPC_Autotuner/ADIOS2/testing/adios2/engine/staging-common/TestCommonReadF.F90:10.6:
use mpi
1
Fatal Error: File 'mpi.mod' opened at (1) is not a GNU Fortran module file
make[2]: *** [testing/adios2/engine/staging-common/CMakeFiles/TestCommonRead_f.dir/TestCommonReadF.F90.o] Error 1
make[1]: *** [testing/adios2/engine/staging-common/CMakeFiles/TestCommonRead_f.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 68%] Linking CXX executable ../../../../bin/TestInlineWriteRead
[ 68%] Built target TestInlineWriteRead
[ 68%] Linking CXX executable ../../../../bin/TestInSituMPIFunctionAssignPeers
[ 68%] Built target TestInSituMPIFunctionAssignPeers
[ 68%] Linking CXX executable ../../../../bin/TestEngineCommon
[ 68%] Built target TestEngineCommon
[ 68%] Linking CXX executable ../../../../bin/TestCommonWriteAttrs
[ 68%] Built target TestCommonWriteAttrs
[ 68%] Linking CXX executable ../../../../bin/TestStagingMPMD
[ 68%] Built target TestStagingMPMD
[ 68%] Linking CXX executable ../../../../bin/TestBPWriteReadLocalVariablesSel
[ 68%] Built target TestBPWriteReadLocalVariablesSel
[ 68%] Built target adios2py
make: *** [all] Error 2
https://code.ornl.gov/pnb/ADIOS2/-/issues/1405Gray-scott does not build with static ADIOS2 installation with SZ2019-06-11T19:03:27ZPodhorszki, NorbertGray-scott does not build with static ADIOS2 installation with SZ*Created by: JasonRuonanWang*
w4g@hp ~/adiosvm/Tutorial/gray-scott/build master ● cmake ..
-- The C compiler identification is GNU 7.4.0
-- The CXX compiler identification is GNU 7.4.0
-- Check for working C compiler: /usr/b...*Created by: JasonRuonanWang*
w4g@hp ~/adiosvm/Tutorial/gray-scott/build master ● cmake ..
-- The C compiler identification is GNU 7.4.0
-- The CXX compiler identification is GNU 7.4.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found MPI_C: /opt/openmpi/lib/libmpi.so (found version "3.1")
-- Found MPI_CXX: /opt/openmpi/lib/libmpi.so (found version "3.1")
-- Found MPI: TRUE (found version "3.1")
-- The Fortran compiler identification is GNU 7.4.0
-- Check for working Fortran compiler: /usr/bin/gfortran
-- Check for working Fortran compiler: /usr/bin/gfortran -- works
-- Detecting Fortran compiler ABI info
-- Detecting Fortran compiler ABI info - done
-- Checking whether /usr/bin/gfortran supports Fortran 90
-- Checking whether /usr/bin/gfortran supports Fortran 90 -- yes
-- Found BZip2: /usr/lib/x86_64-linux-gnu/libbz2.so (found version "1.0.6")
-- Looking for BZ2_bzCompressInit
-- Looking for BZ2_bzCompressInit - found
-- Found ZFP: /usr/local/lib/libzfp.so
-- Found MGARD: /usr/local/lib/libmgard.so
-- Found ZeroMQ: /usr/lib/x86_64-linux-gnu/libzmq.so (found version "4.2.5")
-- HDF5: Using hdf5 compiler wrapper to determine C configuration
-- Found HDF5: /opt/phdf5/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libdl.so;/usr/lib/x86_64-linux-gnu/libm.so (found version "1.10.2") found components: C
-- Found atl: /opt/adios2/lib/cmake/adios2/thirdparty/atl-config.cmake (found suitable version "2.2.1", minimum required is "2.2.1")
-- Found dill: /opt/adios2/lib/cmake/adios2/thirdparty/dill-config.cmake (found version "2.4.0")
-- Found ffs: /opt/adios2/lib/cmake/adios2/thirdparty/ffs-config.cmake (found suitable version "1.6.0", minimum required is "1.6.0")
-- Found enet: /opt/adios2/lib/cmake/adios2/thirdparty/enet-config.cmake (found suitable version "1.3.14", minimum required is "1.3.14")
-- Found EVPath: /opt/adios2/lib/cmake/adios2/thirdparty/EVPathConfigCommon.cmake (found version "4.4.0")
-- Found ADIOS2: /opt/adios2/lib/cmake/adios2/adios2-config.cmake (found version "2.3.1")
-- Configuring done
CMake Error at CMakeLists.txt:13 (add_executable):
Target "gray-scott" links to target "SZ::SZ" but the target was not found.
Perhaps a find_package() call is missing for an IMPORTED target, or an
ALIAS target is missing?
CMake Error at CMakeLists.txt:16 (add_executable):
Target "pdf_calc" links to target "SZ::SZ" but the target was not found.
Perhaps a find_package() call is missing for an IMPORTED target, or an
ALIAS target is missing?
-- Generating done
-- Build files have been written to: /home/w4g/adiosvm/Tutorial/gray-scott/build
✘ w4g@hp ~/adiosvm/Tutorial/gray-scott/build master ●
2.4.0 Production Releasehttps://code.ornl.gov/pnb/ADIOS2/-/issues/1392odd behavior of InquireVariable2019-06-24T18:38:03ZPodhorszki, Norbertodd behavior of InquireVariable*Created by: germasch*
If I add this snipped to `TestBPWriteReadAsStreamADIOS2.cpp`, it then fails:
```diff
diff --git a/testing/adios2/engine/bp/TestBPWriteReadAsStreamADIOS2.cpp b/testing/adios2/engine/bp/TestBPWriteReadAsStreamAD...*Created by: germasch*
If I add this snipped to `TestBPWriteReadAsStreamADIOS2.cpp`, it then fails:
```diff
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.)
https://code.ornl.gov/pnb/ADIOS2/-/issues/1387no error when getting a variable that doesn't exist in current step2019-04-26T20:14:40ZPodhorszki, Norbertno error when getting a variable that doesn't exist in current step*Created by: germasch*
To reproduce:
```cxx
TEST_F(ADIOS2_CXX11_API_IO, StreamingWrite)
{
adios2::Engine writer = m_Io.Open("xxx.bp", adios2::Mode::Write);
double x[3];
auto var = m_Io.DefineVariable<double>("x", {3}...*Created by: germasch*
To reproduce:
```cxx
TEST_F(ADIOS2_CXX11_API_IO, StreamingWrite)
{
adios2::Engine writer = m_Io.Open("xxx.bp", adios2::Mode::Write);
double x[3];
auto var = m_Io.DefineVariable<double>("x", {3}, {0}, {3});
for (int step = 0; step < 3; step++) {
x[0] = 10 + step;
x[1] = 20 + step;
x[2] = 30 + step;
writer.BeginStep();
if (step > 0) {
writer.Put(var, x);
}
writer.EndStep();
}
writer.Close();
}
TEST_F(ADIOS2_CXX11_API_IO, StreamingRead)
{
adios2::Engine reader = m_Io.Open("xxx.bp", adios2::Mode::Read);
double x[3];
auto var = m_Io.InquireVariable<double>("x");
for (int step = 0; step < 3; step++) {
reader.BeginStep();
reader.Get(var, x);
reader.EndStep();
printf("step %d: %g %g %g\n", step, x[0], x[1], x[2]);
}
reader.Close();
}
```
The second test, when run, gives
```sh
[ RUN ] ADIOS2_CXX11_API_IO.StreamingRead
step 0: 6.95312e-310 2.19424e-314 5.2286e-310
step 1: 11 21 31
step 2: 12 22 32
[ OK ] ADIOS2_CXX11_API_IO.StreamingRead (2 ms)
```
The file doesn't contain the variable `x` in step 0, so I don't expect it to read anything (ie, non-initialized nonsense in `x` is fine), but I do expect to get some kind of an error when the `Get` call does not succeed.
https://code.ornl.gov/pnb/ADIOS2/-/issues/1221static build on Mac: install of adios2-config fails2019-06-17T22:30:11ZPodhorszki, Norbertstatic build on Mac: install of adios2-config fails*Created by: pnorbert*
pnb13:build-parallel-static pnb$ cmake -DCMAKE_INSTALL_PREFIX=/opt/adios2-static -DADIOS2_USE_MPI=ON -DBUILD_SHARED_LIBS=OFF -DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=true ..
```
ADIOS2 build configuration:
AD...*Created by: pnorbert*
pnb13:build-parallel-static pnb$ cmake -DCMAKE_INSTALL_PREFIX=/opt/adios2-static -DADIOS2_USE_MPI=ON -DBUILD_SHARED_LIBS=OFF -DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=true ..
```
ADIOS2 build configuration:
ADIOS Version: 2.3.1
C++ Compiler : AppleClang 9.0.0.9000038
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
Fortran Compiler : GNU 8.2.0
/usr/local/bin/gfortran
Installation prefix: /opt/adios2-static
bin: bin
lib: lib
include: include
cmake: lib/cmake/adios2
Features:
Library Type: static (with PIC)
Build Type: Release
Testing: ON
Build Options:
BZip2 : ON
ZFP : OFF
SZ : OFF
MGARD : OFF
MPI : ON
DataMan : ON
SST : ON
ZeroMQ : OFF
HDF5 : ON
Python : OFF
Fortran : ON
SysVShMem: ON
Endian_Reverse: OFF
```
```
$ sudo make install
...
-- Found atl: /opt/adios2-static/lib/cmake/adios2/thirdparty/atl-config.cmake (found suitable version "2.2.1", minimum required is "2.2.1")
-- Found atl: /opt/adios2-static/lib/cmake/adios2/thirdparty/atl-config.cmake (found version "2.2.1")
-- Found dill: /opt/adios2-static/lib/cmake/adios2/thirdparty/dill-config.cmake (found version "2.4.0")
-- Found ffs: /opt/adios2-static/lib/cmake/adios2/thirdparty/ffs-config.cmake (found suitable version "1.6.0", minimum required is "1.6.0")
-- Found dill: /opt/adios2-static/lib/cmake/adios2/thirdparty/dill-config.cmake (found suitable version "2.4.0", minimum required is "2.4.0")
-- Found EVPath: /opt/adios2-static/lib/cmake/adios2/thirdparty/EVPathConfigCommon.cmake (found version "4.4.0")
CMake Error at /opt/adios2-static/lib/cmake/adios2/upstream/CMakeFindDependencyMacro.cmake:47 (find_package):
Found package configuration file:
/opt/adios2-static/lib/cmake/adios2/thirdparty/EVPathConfig.cmake
but it set EVPath_FOUND to FALSE so package "EVPath" is considered to be
NOT FOUND. Reason given by package:
The following imported targets are referenced, but are missing: enet::enet
Call Stack (most recent call first):
/opt/adios2-static/lib/cmake/adios2/adios2-config-common.cmake:57 (find_dependency)
/opt/adios2-static/lib/cmake/adios2/adios2-config.cmake:29 (include)
CMakeLists.txt:5 (find_package)
-- Configuring incomplete, errors occurred!
See also "/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/tmp.bxDz4Tym/CMakeFiles/CMakeOutput.log".
Failed
```2.4.0 Production Releasehttps://code.ornl.gov/pnb/ADIOS2/-/issues/1135Python low-level bindings read string problem2019-03-11T14:54:17ZPodhorszki, NorbertPython low-level bindings read string problem*Created by: williamfgc*
Python doesn't pre-allocate a string that can be passed to C++ glue code using pybind11. Need to find an alternative.*Created by: williamfgc*
Python doesn't pre-allocate a string that can be passed to C++ glue code using pybind11. Need to find an alternative.