-
Notifications
You must be signed in to change notification settings - Fork 53
Description
When writing a "long time" into an openPMD iteration, which is especially the case for WarpX back-transformed diagnostics from the boosted frame, we already see the files on disk (valid ADIOS2) but they are not yet completely written with data or openPMD meta-data. An example meta-data that we write at the end (rightfully) is the base attribute /openPMD.
The typical workflow we need to handle is that users might already read part of a written series. Currently, we read all files of a file-based iteration encoding into the Container of Iterations, even if the /openPMD attribute does not yet exist for some of the iterations. This leads to read issues when accessing the Series. For example:
RuntimeError: [ADIOS2] Requested attribute (/openPMD) not found in backend.
and the Series cannot be constructed, although some valid (closed) iterations already exist.
Instead, we should gracefully throw errors and/or silently ignore the iterations in a Series that are not (yet) valid.
This is part of a larger effort to provide more graceful error handling, especially on the reading side.