Skip to content

beta-2023-09-28

Compare
Choose a tag to compare
@ronh-rs ronh-rs released this 29 Sep 18:19
· 815 commits to main since this release

Release Notes

ReadySet is currently released as a docker container. See the Install with Docker documentation for instructions.

What's New

  • 847c0cd: Add support for correlated and uncorrelated NOT EXISTS in the WHERE clause of queries.
  • c948a59: Add a new FOR CACHE <q> clause to the end of the EXPLAIN GRAPHVIZ SQL command to allow limiting the generated graphviz to only the nodes for a named cached query.
  • 9496016: In SHOW READYSET STATUS, ReadySet will display the number of queries that failed to parse if --prometheus-metrics is enabled.
  • e6afd5f: ReadySet will display the process start time in SHOW READYSET STATUS if --prometheus-metrics is enabled.
  • 3d6800b: ReadySet will display latency quantiles in SHOW PROXIED QUERIES and SHOW CACHES if --prometheus-metrics is enabled.
  • 4bb7a17: Displays the last error encountered by the replicator in SHOW READYSET STATUS if the error prevents the replicator from entering the main replication loop. The error is cleared once replication is able to begin.
  • d723221: Add a --no-color flag to the readyset and readyset-server binaries, which allows disabling colored output in logs
  • 309bf55: You can now optionally display only supported proxied queries with the command SHOW PROXIED SUPPORTED QUERIES. Thanks, @altmannmarcelo!
  • dafad7a: Adds a status field for the connection between the ReadySet adapter and the upstream database to SHOW READYSET STATUS.
  • 0f66130: Added a --replication-tables-ignore flag that allows you to replicate all tables other than the ones explicity ignored. Thanks, @altmannmarcelo!
  • 1ce1282: Adds a SHOW READYSET MIGRATION STATUS <id> SQL extension to query the status of a migration initiated via CREATE CACHE CONCURRENTLY. This command will return the status of the migration, which is either "Completed", "Pending", or "Failed with error: ". Executing this statement with an id that has already returned a non-pending status (Completed or Failed) will lead to undefined behavior.
  • 81340d8: Adds an optional CONCURRENTLY keyword to the CREATE CACHE syntax which triggers a non-blocking migration. If the keyword is present, the CREATE CACHE statement will return an id can be used to query the state of the migration via the Controller's /migration_status endpoint. The new CREATE CACHE syntax is CREATE CACHE [CONCURRENTLY] [ALWAYS] [<cache_name>] FROM {<select_statement> | <query_id>}
  • a23caf3: In SHOW READYSET TABLES, ReadySet will display a description column as to why a table is not replicated.

Fixes

  • 864e5a2: Fix proxying of Postgres queries that use the Postgres text protocol to send query parameters when those parameters use types that aren't natively supported by ReadySet.
  • 51b7d21: ReadySet now correctly returns metadata about the table and column for queries that reference columns from tables directly. This allows client libraries that use that metadata to know which columns come from which tables in a query, either proxied or cached.
  • 12a09b5: Fixed an issue where ReadySet got stuck in a retry loop if the upstream's WAL rotated.
  • 4c5d2cf: Fixed an issue where ReadySet's replication slot could grow without bound in the absence of writes to its upstream database.
  • 46a1120: Fixed an issue where we were incorrectly assuming that LSNs in replication events from Postgres would always increase monotonically.