Skip to content

stable-250724

Choose a tag to compare

@ronh-rs ronh-rs released this 24 Jul 18:40
· 575 commits to main since this release

Release Notes

Readyset is currently released as a docker container and Linux distro binary packages. For installation with docker, see the Install with Docker documentation. Available Linux distribution binary packages for x86_64/amd64 include deb package for Ubuntu 22.04, Debian 12 and later, and rpm packages for Amazon Linux 2023 and RedHat 9. See package installation instructions.

What's New

  • f42825e: Fix a bug where Readyset would fail to save the replication offset for MySQL tables created during active replication, leading to unnecessary table resnapshots.
  • d3be028: Add a --parsing-preset CLI option and PARSING_PRESET environment variable to configure how mismatches between nom-sql and sqlparser-rs parsing are handled. It defaults to prefer-nom, which parses with both nom-sql and sqlparser-rs, logs a warning if they don't agree, and uses the AST produced by nom-sql. To disable parsing with sqlparser-rs, use only-nom. To test experimental query support for syntax not supported by nom, use prefer-sqlparser or only-sqlparser.
  • 373001a: Rate-limit logging of nom-sql/sqlparser-rs mismatches, configurable by the PARSING_LOG_RATE_LIMIT_SECS environment variable. By default, warnings for mismatches are logged at most once per minute. Setting the environment variable to 0 disables rate limiting. The rate limit does not apply to DDL encountered during replication.
  • 24d2b0f: Add a magic number to inter-domain communication to prevent arbitrary connections from being accepted.
  • 1501a18: Allow configuring the number of parallel tables for MySQL snapshots via the MAX_PARALLEL_SNAPSHOT_TABLES environment variable or the --max-parallel-snapshot-tables CLI option.
  • 5014c8c: Add support for arbitrarily large DECIMAL and NUMERIC values, enabling replication and use of the full range allowed by MySQL and Postgres for these columns. This also fixes an issue with replicating NaN values, which will now work as expected.
  • c863ca4: Improve logging when restarting the replicator to print the last replication position.
  • 1845204: If Readyset receives a SET statement it cannot support, proxy subsequent queries upstream.
  • 66ba270: Introduce a new join algorithm for straddled joins (joins where predicates come from both sides). The new algorithm uses optimizations like Index Condition Pushdown (ICP) to push predicates down to RocksDB, resulting in faster lookups and reduced memory footprint.