v1.5.22
Sling v1.5.22 (2026-07-26T23:16:01Z)
New Features
-
ScyllaDB connector: New
scylladbdatabase connection type for basic import/export, including connection template, default port (9042), and NoSQL type registration. -
MariaDB CDC reader: Dedicated binlog reader for MariaDB (separate from MySQL) handling the 4-column
SHOW BINLOG STATUSDDL, the MariaDB GTID scheme, and transaction-boundary reads when resuming by file/offset. -
CDC
change_feedoption: Reference a pre-provisioned, DBA-managed server-side CDC object instead of relying on the engine default — a PostgreSQL publication, a SQL Server capture instance, or an Oracle GoldenGate stream. Takes precedence over engine-specific properties (e.g.gg_stream). -
Composite unique keys: Nested
uniquekey groups (e.g.unique: [[a, b]]) are now preserved as composite unique indexes in generated DDL instead of being flattened into separate single-column constraints. -
Redshift IAM role & profile auth: Added
AWS_ROLE_ARNandAWS_PROFILEsupport for S3 authentication during Redshift COPY/UNLOAD, alongside the existing access-key/session-token paths.AWS_ROLE_ARN=defaultuses the cluster's attached default IAM role. -
Pipeline execution state & CLI args: Pipeline runtime state now exposes execution-level fields (ID, start time, status, errors), and CLI arguments are surfaced via
SLING_CLI_ARGS_MAPwith dashed keys normalized to underscores and list values (primary-key,select,streams) preserved as structured data.
Bug Fixes
-
on_failure: deferin hook group loops: Deferred step failures no longer abort the group mid-loop. They are collected across all loop iterations (concurrent and sequential) and surfaced only after every iteration completes; hard failures still abort immediately. -
CDC
replay_fromin shared-reader groups:replay_fromwas silently ignored when multiple streams shared a CDC reader — the group computed its start position from each stream's already-advanced position. Stream positions are now rewound before the shared start position is computed, matching single-stream semantics. -
MariaDB CDC table filtering (#775): Wildcard-expanded stream names retained their identifier quoting (e.g.
`sf`.`fakturs`), so no binlog rows event ever matched the filter set and runs reported "read 0 CDC events". Table names are now normalized (quotes stripped, lower-cased) before filtering. -
Replication runtime state race:
ReplicationConfig.RuntimeStatenow locks state access to prevent race conditions from concurrent callers.