ingestr v1.1.18 - MySQL CDC Streaming And Iceberg Concurrency


ingestr v1.1.18, published on August 4, 2026, adds streaming support for MySQL CDC. The same release guards XA checkpoints and adjusts two Iceberg catalog concurrency paths that matter when several ingestion processes start or write at once.

The full release notes and downloads are on the GitHub release page.

The main data movement change is explicit support for MySQL CDC streaming. The release notes do not document new flags, configuration keys, or connector limits, so the safe reading is narrow: v1.1.18 adds the streaming path, but does not claim a wider MySQL compatibility change.

A second MySQL change guards CDC XA checkpoints. XA transaction boundaries and checkpoint state are correctness sensitive. A bad checkpoint decision can affect what a resumed reader considers complete. The notes do not identify the previous symptom or the exact guard condition, so this should not be described as a specific data loss fix. It is still a useful signal for teams that capture changes from MySQL deployments using XA transactions.

The MySQL test formatting commit is internal maintenance. It may make the streaming test suite easier to maintain, but the release notes attach no runtime behavior to it. Operators should focus their validation on the new streaming path and the checkpoint guard.

Two fixes target SQLite backed Iceberg catalogs. First, the catalog now receives a busy_timeout. SQLite reports contention when another connection holds a lock. A busy timeout gives the waiting operation a chance to proceed instead of failing at the first contention event. The release notes do not state the timeout value, so they support no claim about a latency bound.

The related follow up scopes the busy_timeout check to the query portion of the SQLite URI instead of inspecting the entire URI. That is a parsing and configuration correctness fix. It reduces the chance that unrelated URI text will be mistaken for the setting, while keeping the behavior attached to the actual query parameter.

Another Iceberg change tolerates a namespace that a concurrent writer creates. This closes a common startup race: two writers can both observe that a namespace is absent, then both attempt creation. Once one succeeds, the other should accept the resulting namespace rather than treat the race as a terminal failure.

These fixes improve contention handling, but they do not remove SQLite writer serialization. A timeout can turn an immediate error into wait time, and sustained catalog contention can still appear as higher ingestion latency.

The release notes list no breaking change, schema migration, or required configuration edit. Existing deployments can therefore keep the upgrade focused on the paths touched by the release.

For MySQL CDC, exercise initial startup, steady state streaming, and resume behavior around XA transaction activity. Check that checkpoint progress matches committed source activity. For Iceberg, start concurrent writers against the same SQLite catalog and namespace, then inspect catalog errors and ingestion latency. This directly covers the new busy timeout behavior and the namespace creation race.

There is no operator facing claim attached to the comment trimming or test formatting commits. Those changes should not drive an upgrade by themselves. The release page remains the authoritative scope for this version.