Skip to content

Releases: readysettech/readyset

beta-2023-06-29

30 Jun 20:18
Compare
Choose a tag to compare

2023-06-29 Release Notes

Included in this release are binaries for the following platforms:

  • x86_64-unknown-linux-gnu / Amazon Linux
  • aarch64-apple-darwin

What's New

  • Helm chart improvements. [c6ded74, cc1cf3f]
  • The custom SHOW READYSET STATUS SQL statement now includes the minimum and maximum replication offset. da50579
  • Apache Zookeeper is no longer supported. 83ced41
  • Reduced the time ReadySet waits before retrying after a replication error from 30s to 1s. 2649e2f
  • SQL support:
    • Allow spaces between and around arguments to aggregate functions. 529ba86
    • MySQL:
      • Allow arbitrary expressions as arguments to GROUP_CONCAT. 6f16afe
      • Support bit literals (already supported for Postgres). 071678b (thanks @cameronbraid!)
    • Postgres:
      • Support COMMENT statements. a2e9302
  • Added the custom EXPLAIN DOMAINS SQL statement, which gives a list of domain replica shards and the URLs of the workers they're running on, sorted by the worker URL. [8e402e7, 12090f8]

Performance Improvements

  • RocksDB-based persistent storage now uses the block-based SST format, improving post-snapshot compaction speed by 10x for large tables (100+ GiB), and improving get/put performance by 7-28% across current benchmarks. [8a32b30a, d0bec66]

Bug Fixes

beta-2023-05-31

01 Jun 17:39
Compare
Choose a tag to compare

2023-05-31 Release Notes

What's New

  • Revamped helm chart with changes to align with best practices and support
    multiple cloud platforms. a51ac40 b739acb 931d0b9 c4ff836
  • Created the proptest-stateful
    crate and added extensive stateful property tests.
  • ReadySet can now infer the database_type from an upstream_db_url,
    making the --database-type argument optional. If --database-type is
    provided with an upstream_db_url, readyset will validate the database
    type. 8ad4482
  • Improve error messages for why something is unsupported when running
    without an upstream database. 41f3532
  • Add --controller-address option that exports prometheus metrics for the
    readyset-server when running in standalone mode. 688ab93
  • Add replication-server-id flag to allow multiple readyset deployments to
    connect to the same upstream db. Each deployment must have a unique
    replication server id. 896b423
  • Add logging that uses row estimates to report snapshotting progress.
    9f85776
  • Added an experimental feature to automatically inline
    placeholders in a query with literal values when the placeholders are
    unsupported, so that the query can be run against ReadySet. This
    feature is enabled with the --experimental-placeholder-inlining flag.
    This feature is experimental as it could degrade the performance of
    the ReadySet instance if too many inlined instances of a query are
    created. It is recommended that you drop the cache of any query with
    inlined placeholders with high cardinality. 4a31acd
  • Add support for INT2, INT4, and INT8 postgres type aliases. e9518f1

Performance Improvements

  • Controller requests now run asynchronously. 120fb30
  • RocksDB compaction is now done as a background process. 51d5a4c
  • Tuned the retry behavior of extend_recipe. 1b77183
  • Initialize persistent state in a different thread. c78bd61
  • Numerous miscelaneous query performance optimizations.

Bug Fixes

  • Update metrics-rs crate to 0.21 to fix a bug in summary
    calculations
    where they
    were not being calculated over sliding windows of
    time
    .
    1557db0
  • Fixed a bug where DDL actions were lost when we encountered a particular
    error in replication. 1101215
  • Fixed an issue where we returned an empty value instead of BEGIN for
    certain transactional queries. fd08ff1
  • Fixed an incorect timezone conversion that prevented lookups into a date
    field using timestamps that had the same date. 33990c7
  • Fixed a bug with optimized string serialization. 5dec2e1
  • Fixed a panic if offset is longer than result set, specifically in the case
    that a query, has ORDER BY, LIMIT, and OFFSET, has aggregates with a
    group by, and doesn't filter by a primary or unique column. 5d9c5ce
  • Fixed a panic that could happen if a connection failed during a migration.
    020f58a
  • Fixed a bug where the ordering of project and distinct nodes would return
    incorrect results. 236ed82
  • Properly mark PostgreSQL partitioned tables as unsupported. 2abffe1
  • Fix handling of a partial replay where a source node has been dropped.
    94be3fc
  • Properly handle creating tables with FKs. f10319e
  • Properly handle replication offsets for uninitialized base tables. 582b68f

beta-2023-04-12

17 Apr 15:19
Compare
Choose a tag to compare
  • Fixed an issue where ReadySet would crash when replicating an ALTER TYPE statement referencing a type that was mentioned in a column of a dropped table.
  • Fixed formatting of table identifier with schema (if initially provided during parsing) for ALTER TABLE, DELETE FROM, INSERT INTO, and UPDATE statements.
  • ReadySet running in postgresql mode now defaults to SCRAM-SHA-256 authentication for all clients. To force ReadySet to use cleartext authentication (the previous behavior) instead, pass --postgres-authentication-method=cleartext or set the POSTGRES_AUTHENTICATION_METHOD environment variable to cleartext when running the readyset binary

beta-2023-03-15

17 Mar 23:48
Compare
Choose a tag to compare
  • Fixed PostgreSQL table/column quoting for SHOW PROXIED QUERIES to use double quotes instead of backticks.
  • Fixed quoting of table/column identifiers in PostgreSQL snapshotting.
  • Added support for the PostgreSQL functions json_object and jsonb_object.
  • Fixed a bug where we were not correctly handling netmasks in the Postgres INET type.
  • When upgrading to a new version of ReadySet with an incompatible format for user configuration, ReadySet will now automatically wipe out the cluster state, where previously manual intervention was required. Note that this does mean that upgrading to a new version of ReadySet can currently result in losing CREATE CACHE statements.
  • Added a new '--statement-logging' flag to enable logging statements received by ReadySet from the client, and via replication from the primary database. Logs are optionally written to the path provided by '--statement-log-path' or _statements.log.
  • ReadySet now defaults to explicit query caching mode, rather than implicit
  • ReadySet will now automatically re-snapshot the snapshotted copy of base table state if necessary when upgrading to a new version.
  • ReadySet now automatically runs ALTER TABLE REPLICA IDENTITY FULL on PostgreSQL tables that ReadySet is configured to replicate from, and which don't have primary keys or already-configured non-default replica identities. This avoids an issue where ReadySet replicating from these tables would cause PostgreSQL to return an error message for updates and deletes to these tables

beta-2023-01-18

18 Jan 20:33
Compare
Choose a tag to compare
replication: incremental updates on compaction

Fix the incremental updates on compaction that were
broken due to the change in RocksDB log format.

Change-Id: Icd711dad5dceea1049c9ef79cf9548b497a560bb
Reviewed-on: https://gerrit.readyset.name/c/readyset/+/4160
Tested-by: Buildkite CI
Reviewed-by: Luke Osborne <luke.o@readyset.io>
Reviewed-by: Peter Farr <peter@readyset.io>

beta-2022-12-15

15 Dec 18:01
Compare
Choose a tag to compare

beta-2022-11-16

19 Nov 08:43
Compare
Choose a tag to compare

beta-2022-11-09

09 Nov 20:30
Compare
Choose a tag to compare
beta-2022-11-09 Pre-release
Pre-release

ReadySet Core Release Notes

File Architecture sha256sum
readyset-mysql x86_64 966f4701beca80faf8d572fd261ff8431bbda374557680c2687e452c6cc228d6
readyset-psql x86_64 6a1a5a47b3ee138c38d1d493fe5d442dabd001abb4858982dc2dfba3fbd6eaaf
readyset-server x86_64 d52631fb7b8b0a912aa205f005ffd32b8494f38fb43ea96ccee08b41c216002d
readyset-psql darwin/arm64 81faacc0e463f5dbe3b1a0fa5d139ea86e203f36e39d91814cfc1fc391c52d10
readyset-mysql darwin/arm64 0c00931f87900e5570cdb83421ceddba64e55abe5316e0f29bd59848849f7884
readyset-server darwin/arm64 76d7a65b9ef953af5ea337fa7ed731524c463d961835f7cb80444c6c9cc7a7d3

beta-2022-11-01

02 Nov 13:01
Compare
Choose a tag to compare
beta-2022-11-01 Pre-release
Pre-release

beta-2022-11-01

ReadySet Core Release Notes

Binary Archive Architecture Sha256Sum
readyset-mysql linux-x86_64 7aaeba77e70fa5c8f64b0d3ab1603365ae25b3f9bf4d9048a7b84cf63744b73a
readyset-psql linux-x86_64 7f474cb5c7fc9f799fd84be735660e0abf7595ff108afaabe8c502737c2ffc76
readyset-server linux-x86_64 d4998daeecef61b3765a029b0467316118ac8e71c9520ffdf6415b8381373a36
readyset-mysql darwin-arm64 44ba62376b0a34fd099cd9c7b83fbb2714a868615d2792e63104b5a6862759b4
readyset-psql darwin-arm64 cc220b6d1dfba79e9a0ad9946205000a072fd29fdcd09d6f510842fde827066f
readyset-server darwin-arm64 8a204cd07b85fbbc375ee7e2c9b87ce44b6df3a2dab8e78454d2047f7c02cfd0