# MinIO MemKV RELEASE.2026-05-29T07-28-46Z

Released: 2026-05-29

Ships the NIXL plugin's real backend and the embedded `memkv doc` site for the
first time, plus storage and RDMA data-integrity and stability fixes. No
protocol or hardware-compatibility changes.

---

## Downloads

### Server Binary

| Platform | Architecture | Download |
| -------- | ------------ | -------- |
| Linux    | amd64        | [memkv](https://dl.min.io/aistor/memkv/release/linux-amd64/memkv) |
| Linux    | arm64        | [memkv](https://dl.min.io/aistor/memkv/release/linux-arm64/memkv) |

### NIXL Plugin (for Dynamo / KVBM integrations)

| Platform | Architecture | Download |
| -------- | ------------ | -------- |
| Linux    | amd64        | [libplugin_MEMKV.so](https://dl.min.io/aistor/memkv/release/linux-amd64/libplugin_MEMKV.so) |
| Linux    | arm64        | [libplugin_MEMKV.so](https://dl.min.io/aistor/memkv/release/linux-arm64/libplugin_MEMKV.so) |

### LD_PRELOAD Shim (for MLPerf-Storage kvcache workloads)

| Platform | Architecture | Download |
| -------- | ------------ | -------- |
| Linux    | amd64        | [libmemkv_preload.so](https://dl.min.io/aistor/memkv/release/linux-amd64/libmemkv_preload.so) |
| Linux    | arm64        | [libmemkv_preload.so](https://dl.min.io/aistor/memkv/release/linux-arm64/libmemkv_preload.so) |

### Packages

`.deb`, `.rpm`, and `.apk` packages bundle the server + both `.so` sidecars + the LMCache and sglang Python wheels into a single per-arch install.

| Format | Architecture | Download |
| ------ | ------------ | -------- |
| DEB    | amd64        | [memkv\_20260529072846.0.0_amd64.deb](https://dl.min.io/aistor/memkv/release/linux-amd64/memkv_20260529072846.0.0_amd64.deb) |
| DEB    | arm64        | [memkv\_20260529072846.0.0_arm64.deb](https://dl.min.io/aistor/memkv/release/linux-arm64/memkv_20260529072846.0.0_arm64.deb) |
| RPM    | amd64        | [memkv-20260529072846.0.0-1.x86_64.rpm](https://dl.min.io/aistor/memkv/release/linux-amd64/memkv-20260529072846.0.0-1.x86_64.rpm) |
| RPM    | arm64        | [memkv-20260529072846.0.0-1.aarch64.rpm](https://dl.min.io/aistor/memkv/release/linux-arm64/memkv-20260529072846.0.0-1.aarch64.rpm) |
| APK    | amd64        | [memkv\_20260529072846.0.0_x86_64.apk](https://dl.min.io/aistor/memkv/release/linux-amd64/memkv_20260529072846.0.0_x86_64.apk) |
| APK    | arm64        | [memkv\_20260529072846.0.0_aarch64.apk](https://dl.min.io/aistor/memkv/release/linux-arm64/memkv_20260529072846.0.0_aarch64.apk) |

After installing the deb/rpm, the Python plugin wheels land at `/usr/share/memkv/wheels/`:

```bash
pip install /usr/share/memkv/wheels/memkv_lmcache-*.whl
pip install /usr/share/memkv/wheels/memkv_sglang-*.whl
```

The NIXL plugin is auto-symlinked to `/opt/nvidia/nvda_nixl/lib/plugins/` when that directory exists (postinstall hook).

### Container Image

```bash
docker pull quay.io/minio/memkv:RELEASE.2026-05-29T07-28-46Z
docker pull quay.io/minio/memkv:latest
```

Container ships the server + the NIXL plugin (under `/usr/local/lib/plugins/`). The LD_PRELOAD shim and Python wheels are not included in the container image — use the deb/rpm for those.

### Verification

Each binary is signed with both minisign (preferred) and GPG; sha256sums are published alongside.

```bash
# minisign
minisign -Vm memkv -P RWTx5Zr1tiHQLwG9keckT0c45M3AGeHD6IvimQHpyRywVWGbP1aVSGav

# sha256
sha256sum -c memkv.sha256sum
```

---

## Changes since RELEASE.2026-05-26T21-39-33Z

### New Features

- **NIXL plugin now ships its real backend.** Earlier releases packaged a stub;
  Dynamo / KVBM users should redownload the plugin (or reinstall the deb/rpm).
- **Embedded docs restored.** `memkv doc` serves the full site instead of a placeholder.
- **File-backend capacity reporting** in `/v1/status`, `memkv admin status`, and Prometheus gauges (previously Direct-mode only).

### Bug Fixes

- Storage: short reads/writes now fail instead of acking partial transfers as complete.
- Storage: partial sub-block overwrites no longer zero existing data.
- Plugins: a malformed `exists()` response no longer crashes the host inference server (vLLM / SGLang).
- Plugin: `query_mem` writes results back to the correct keys when some are null.
- Plugin: TCP fallback no longer reads/writes past the buffer on non-zero offsets.
- RDMA: connection teardown no longer leaks DC client state on reconnect churn.
- RDMA: completion-poll timeouts recover the queue pair before reusing its buffer.
- RDMA: cache-miss-heavy workloads no longer stall up to 30 s on a drained receive queue.

---

## Documentation

- Hosted docs: <https://docs.min.io/memkv/>
- Embedded docs (in the binary): `memkv doc` serves the same site locally.

## Support

- Security disclosures: security@min.io
