Skip to content

IOWarp Core 2.2.1

Latest

Choose a tag to compare

@lukemartinlogan lukemartinlogan released this 18 Aug 19:31
97fca74

IOWarp Core 2.2.1 is a patch release focused on making the FUSE adapter
(clio-fs) usable across Linux systems
: the FUSE-enabled pip wheels and conda
packages now install and import on the RHEL8 family (Rocky/Alma/RHEL 8,
glibc 2.28 — the standard HPC login-node OS), which 2.2.0 could not do on
either channel.

93 commits across 19 merged pull requests from 6 contributors since
v2.2.0
(2026-08-08 → 2026-08-18).


Highlights

FUSE adapter compatibility across Linux systems

  • pip wheels are now manylinux_2_28 (were manylinux_2_34). This is a
    strict widening: a 2_28 wheel installs on every glibc ≥ 2.28 host, so
    pip install iowarp-core — FUSE adapter and ChiMods included — now works on
    RHEL8-family systems where pip previously reported "no wheels with a matching
    platform tag" (#974, fixes #973).
  • The conda package is built against a glibc-2.28 sysroot (stdlib("c")
    • c_stdlib_version 2.28) and records __glibc >=2.28. The 2.2.0 linux-64
      package silently imported GLIBC_2.38 symbols and failed at import on Rocky 8
      (#974). c_stdlib is now declared for macOS as well (#984).
  • A new ELF glibc gate (installers/pip/check_wheel_glibc.py) runs in both
    publish workflows and fails the release if any binary in a wheel or conda
    package imports a newer glibc than the package promises — the gap that let
    both defects ship. Rocky 8 (x86_64 + aarch64) joins the wheel regression
    matrix (#974).
  • Every build-packages job is bounded with timeout-minutes (#992).

Runtime and CTE fixes

  • CTE: RestoreMetadataFromLog deadlock during WAL replay resolved (#982,
    fixes #972).
  • clio_run stop is convergent and robust: real teardown, --force, and a
    runtime status probe that distinguishes clean / stale / unresponsive
    (#962, #710); each pool now owns one persistent task-stat model (#957).
  • Unit tests are hermetic against the developer's own runtime config
    (#979, #978); the CEE comprehensive test gets its own composed pool chain
    (#964); the distributed docker stop test now runs and passes end-to-end
    (#998, #985, #987, #989).

HDF5

  • CLIO cache tier for the VOL and VFD connectors (#967).
  • Portability: VOL coherence stamp no longer depends on glibc (fixes the macOS
    and Windows builds) (#971); the VFD is built off the UNIX gate rather than
    the ELF gate (#938); g_fs_client is exported through the filesystem's own
    DLL macro (#948); GPUH5 ↔ HDF5 import/export files relocated (#969).
  • GPUH5: persistent kernel, fixed async double buffering, CTE
    optimizations (#778).

Upgrade notes

  • No API or on-disk format changes; a drop-in upgrade from 2.2.0.
  • pip: pip install --upgrade iowarp-core (wheels tagged manylinux_2_28).
  • conda: the linux-64 package now carries a __glibc >=2.28 constraint; if you
    saw __isoc23_strtol / GLIBC_2.38 import errors from 2.2.0, this is the fix.