Product roadmap

What we are working on, and what has been delivered recently. Plans can change.

Planned

  • Data enrichment. Repstance fills a column of the Target with a value that it gets while it replicates: from an HTTP call to a service of your choice (for example a translation, a classification, a currency rate, or the embedding service of an AI model), or from a script that runs on the Repstance server (bash). The value is part of the replicated row, in the Initial Load and in the ongoing replication, for every Target. Calls are sent in batches and the answers are kept, so that a restart produces the same values. The administrator of the server decides which hosts and which commands may be used, and the feature is off until it is enabled in the server configuration.
  • Real-time streams for AI applications. Output to vector databases (for example PGVector, Milvus and Pinecone), so that RAG caches receive the changes of the production database as they happen.
  • Automatic planning of the Initial Load. Large tables are split into pieces automatically, the progress of every piece is tracked on its own, and an interrupted load resumes by itself. It builds on the chunk option of the Initial Load, which splits a table by the range of its key.

Delivered

  • Version 6 (November 2026), Repstance Advanced Edition: PostgreSQL (including Amazon Aurora PostgreSQL) and MySQL as Sources (see PostgreSQL as Source and MySQL as Source), and Apache Kafka as a Target: the changes are published as JSON messages, one topic for every table (see Replication to Apache Kafka).
  • Azure SQL Database, Azure SQL Managed Instance and Google Cloud SQL for SQL Server. Support for these managed SQL Server services.
  • SQL Server Always On: the CDC data can be read from a readable secondary node instead of the primary (the parameter secondary, see SQL Server Capture Parameters).
  • Batch and bulk apply enhancement: transactions are combined and runs of changes are bulk loaded (the parameters batchmode and bulkthreshold), and a smaller payload is written for UPDATE and DELETE of tables with a key (the parameter minimizepayload).
  • Initial Load with a row filter, chunks and the merge option (see Initial Load).
  • Data comparison with sampling, incremental mode and repair (see Data Comparison).