Skip to content

ADIOS1 on macOS#1396

Merged
ax3l merged 2 commits intoopenPMD:devfrom
ax3l:ci-macos-adios1
Mar 30, 2023
Merged

ADIOS1 on macOS#1396
ax3l merged 2 commits intoopenPMD:devfrom
ax3l:ci-macos-adios1

Conversation

@ax3l
Copy link
Member

@ax3l ax3l commented Mar 26, 2023

CI: macOS ADIOS1

Ensure symbol exports are properly set.

Fix

Disable runtime error recovery in ADIOS1, include missing symbols, avoid globals in JSON.cpp options.

First seen on conda-forge/openpmd-api-feedstock#99

@ax3l ax3l added this to the 0.15.1 milestone Mar 26, 2023
@ax3l ax3l force-pushed the ci-macos-adios1 branch 6 times, most recently from 5b7dc27 to 67c880f Compare March 26, 2023 07:57
@ax3l ax3l mentioned this pull request Mar 26, 2023
3 tasks
@ax3l ax3l force-pushed the ci-macos-adios1 branch from 67c880f to 1e0ce50 Compare March 26, 2023 08:00
@ax3l ax3l requested a review from franzpoeschel March 26, 2023 08:01
@ax3l ax3l force-pushed the ci-macos-adios1 branch from 1e0ce50 to ce4e765 Compare March 26, 2023 08:05
@ax3l ax3l mentioned this pull request Mar 27, 2023
5 tasks
@franzpoeschel franzpoeschel force-pushed the ci-macos-adios1 branch 2 times, most recently from d43df96 to fc7bff6 Compare March 27, 2023 13:59
@ax3l
Copy link
Member Author

ax3l commented Mar 27, 2023

triggering CI

@ax3l ax3l closed this Mar 27, 2023
@ax3l ax3l reopened this Mar 27, 2023
@ax3l ax3l mentioned this pull request Mar 28, 2023
8 tasks
@ax3l
Copy link
Member Author

ax3l commented Mar 28, 2023

The Linux / clang14_py311_nompi_h5_ad1_ad2 test seems to reproducibly fail on this.

@franzpoeschel
Copy link
Contributor

The issue is caused by serial builds with ADIOS1

@franzpoeschel
Copy link
Contributor

Ok, for some reason, when building serial openPMD-api with ADIOS1, linking the parallel ADIOS1 stub library against JSON.cpp causes this issue... ??

@franzpoeschel
Copy link
Contributor

Aaah..
We have a global in that file:

std::vector<std::string> backendKeys{"adios1", "adios2", "json", "hdf5"};

And linking that against both ADIOS1 implementations makes them destroy that twice

@ax3l
Copy link
Member Author

ax3l commented Mar 30, 2023

Great catch, thank you for your help!
I'll squash this for easier backportability.

Ensure symbol exports are properly set.
... but don't rely on catching

- Add missing .cpp files to ADIOS1
- Avoid global variables in JSON.cpp
@ax3l ax3l force-pushed the ci-macos-adios1 branch from 6104697 to 032ebfc Compare March 30, 2023 06:36
@ax3l ax3l removed the help wanted label Mar 30, 2023
@ax3l ax3l merged commit a6f5131 into openPMD:dev Mar 30, 2023
@ax3l ax3l deleted the ci-macos-adios1 branch March 30, 2023 07:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants