v0.1.6
Everything since v0.1.5. This release makes three changes: a CDC Reload copies every PostgreSQL row, a default install carries four Kafka topics instead of 28, and the first-run demo runs with no language model configured.
Images are published for linux/amd64 and linux/arm64.
Install
Docker (Compose)
curl -sSL https://raw.githubusercontent.com/rsync-ai/rsync/v0.1.6/install.sh | bashKubernetes (Helm) — one command; it sizes the install to your cluster:
curl -sSL https://raw.githubusercontent.com/rsync-ai/rsync/v0.1.6/install-k8s.sh | bashThe chart is also available directly: helm pull oci://ghcr.io/rsync-ai/charts/rsync-ai --version 0.1.6.
Known issue: "Start with sample data" fails on a Docker install
On a Docker (Compose) install, the first-run demo fails with a 502 error: could not translate host name "demo-warehouse". The bundled demo database is not attached to the network the connectors run on. Kubernetes installs are not affected. To fix it, run this once on the host and then click Start with sample data again:
docker network connect --alias demo-warehouse rsync-ai-mcp rsync-demo-warehouseThe fix ships in the next release.
What changed
Change data capture
- Reload copies every row. A Reload or re-snapshot of a PostgreSQL CDC pipeline could lose rows. The bundled PostgreSQL CDC connector is patched so the snapshot reads the whole table.
- Start resumes a stopped connector every time, and incremental-snapshot signals work against a Kafka cluster that requires authentication.
- A pipeline's incremental-snapshot signals go to one topic with a fixed key.
- A PostgreSQL or MongoDB CDC pipeline no longer gets a schema-history topic or an empty DDL topic. Only the sources that use them get them: MySQL/MariaDB, SQL Server, Oracle and Db2.
Batch pipelines
- A column whose values mix types no longer loses rows on a columnar write.
- Resume re-reads batches the sink sent to the dead-letter topic, instead of skipping past them.
- A run whose rows did not all land now fails, instead of pausing on "Configure connections".
- Table statistics show the run that moved rows, not a later empty Resume.
Kafka topics
- Breaking: a default install provisions four platform topics instead of 28:
domain.events,rsync.notifications,pii.scan.requestandpii.scan.response. The unused agent command-bus topics are removed, and so are the planner's Kafka consumer,POST /api/v1/topology/topics/pipelineandENABLE_KAFKA_CONSUMER. Topics an existing install already has are not deleted. domain.eventskeeps 7 days of messages instead of growing forever.- Schema-drift topics are created only when
RSYNC_SCHEMA_DRIFT_ENABLED=true. - Dead-letter topics are created up front. A message that cannot be dead-lettered is retried, not skipped.
First-run demo
- "Start with sample data" reaches a pipeline confirmation with no language model configured, and onboarding opens the chat with the request already sent.
- The demo no longer fails with "Missing connector: sample-data".
Interface
- A redesigned chat home: suggestions built from your own connections, your real pipelines, a loading skeleton, and a wide layout.
Self-hosting
- MinIO now pulls
cgr.dev/chainguard/minio, pinned by digest, for both the server and themcjob, because the upstream images no longer serve anonymous pulls. Helm chart 0.1.5 and older name the withdrawn images;docs/deployment/kubernetes.mdshows the override.
Kubernetes
- The Postgres liveness probes name the database. The generation tier receives its Redis settings.
- Claim-check storage resolves to the release's own object store. A large batch no longer counts its manifest twice.
Tested before release
- A fresh Kubernetes cluster with in-cluster Kafka ran PostgreSQL CDC, MongoDB batch and the sample-data demo.
- A fresh VM installed with
install.shran PostgreSQL CDC: snapshot row counts matched the source (5,000 and 20,000 rows), and a live insert, update and delete each landed within seconds. That VM found the known issue above.