Included here are the release notes for all releases in the v2.6 release series. Content will be added as new notable features and changes are available in the patch releases of the v2.6 release series.

Use version 2.6.2.0 or later

Release v2.6.1.0 contains an authentication vulnerability in YCQL LDAP. YSQL is not affected.

If you're using YCQL LDAP with v2.6.1.0 and can't upgrade immediately, see the note in the Version 2.6.1.0 section for mitigation instructions.

v2.6.19.0 - August 22, 2022

Build: 2.6.19.0-b15

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.19.0-b15

Improvements

Yugabyte Platform

  • [PLAT-3194] Redact the default alerts email to prevent phishing attacks
  • [PLAT-3717] [PLAT-3730] Reducing sudo footprint of preflight checks

Database

N/A

Bug fixes

Yugabyte Platform

  • [PLAT-2689] Missing backslash () in Prometheus YAML for expired_transactions (Helm chart and Replicated)
  • [PLAT-3330] HA bundle bloated
  • [PLAT-3654] Fix CQL live queries
  • [PLAT-3684] [PLAT-3685] [HA] DNS longer than 64 characters causing DB update error
  • [PLAT-3700] AppInit fails when multiple builds of one architecture type in same directory
  • [PLAT-3864] GCP VM Image upgrade issue
  • [PLAT-3914] Add retries in ChangeMasterConfig RPC to master
  • [PLAT-4032] Make Platform created swamper target directory automatically if absent in 2.6
  • [PLAT-4815] Record old and new gflag values in audit payload for GFlag Upgrade tasks
  • Invalid uptime on the Platform UI

Database

  • [8869] [12584] [YSQL] Fix TRUNCATE involving indexes + tablegroups
  • [11275] [DocDB] Prevent tserver panic if earliest log index accessed pre-peer init

Known issues

Yugabyte Platform

N/A

Database

N/A

v2.6.18.0 - April 26, 2022

Build: 2.6.18.0-b3

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.18.0-b3

Bug fixes

Yugabyte Platform

  • [PLAT-3752] Up-version H2 db to fix NPE
  • [PLAT-3680] [PLAT-3681] Provide Delete HA configuration button when something is wrong

Database

  • [12226] [DocDB] Smaller RBS chunk size default for master

Known issues

Yugabyte Platform

N/A

Database

N/A

v2.6.17.0 - April 18, 2022

Build: 2.6.17.0-b10

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.17.0-b10

Improvements

Yugabyte Platform

  • [PLAT-3510] Improve ysqlsh connectivity command when TLS is enabled
  • [PLAT-3648] [PLAT-3651] Add runtime configuration for universe_version_check_mode

Bug fixes

Yugabyte Platform

  • [PLAT-3432] Backup scheduler doesn't do backups if the last/previous task wasn't marked as finished
  • [PLAT-3652] Fix disk utilisation health check in case additional lines added to command output.
  • [PLAT-3653] Fix TimeoutExpired error handling
  • [PLAT-3653] Remove pipe from redis health check
  • [Platform] Health checks failing for universe with read replica after full move

Database

  • [11799] [YSQL] [DocDB] Update all tablets when a remote server is unreachable
  • [11805] [YSQL] Avoid setting read time on client if possible
  • [11911] [YSQL] Use correct tuple descriptor
  • [11946] [DST] [PITR] Correctly set op ID when replaying snapshot operations during tablet bootstrap
  • [11956] [YBase] Master RPCs should retry if the master is unreachable
  • [11990] [YSQL] Fix handling of invalid limit in limit node

Known issues

Yugabyte Platform

N/A

Database

N/A

v2.6.16.0 - March 24, 2022

Build: 2.6.16.0-b14

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.16.0-b14

Bug fixes

Yugabyte Platform

  • [PLAT-1822] Timeout occurs during file descriptor health check
  • [PLAT-2617] Adding dbname additionally while connecting ysqlsh
  • [PLAT-2935] Bump up timeouts for API calls which need master leader to be available.
  • [PLAT-3187] Exclude prometheusv2 directory from platform backup tar
  • [PLAT-3336] Upgrade Software action doesn't recreate symlinks in master folder on nodes where only TServer is running
  • [PLAT-3437] [xCluster] Lag metrics shows NaN ms with BackUp/Restore scenario
  • [Platform] Add sudo-whitelist for Platform/on-prem setup

Database

  • [9547] [YSQL] alter table of parent geo-partitioned table affects select on child
  • [9877] [DocDB] Fix xCluster Stream Deletion Race Condition
  • [11189] [DocDB] In a cluster with custom tablespaces, load balancing gets skipped for tables in a colocated database that opt out of colocation
  • [11767] [Backups] Fix restoring colocated db to db with the same id
  • [11781] [xCluster] Set xCluster service queue size to 5000

Known issues

Yugabyte Platform

N/A

Database

N/A

v2.6.15.0 - Feb 25, 2022

Build: 2.6.15.0-b3

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.15.0-b3

Bug fixes

Yugabyte Platform

N/A

Database

  • [4692] [YSQL] Stop scan before the client timeout
  • [11258] [YCQL] Add timeout for prepare child
  • [11440] [YSQL] Drop temp table when session terminates
  • [11527] [YQL] Correctly create range bound when IN list is empty

Known issues

Yugabyte Platform

N/A

Database

N/A

v2.6.14.0 - Feb 18, 2022

Build: 2.6.14.0-b9

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.14.0-b9

Bug fixes

Yugabyte Platform

[PLAT-2241] [Backups] Fix for the error: 'ascii' codec can't encode character [PLAT-2585] Fix the metrics inconsistency [PLAT-2695] Undo enum34 change, breaking yugabundle install + force correct python version in py_wrapper [PLAT-3133] Azure backups failing because of bundled SSH commands [Platform] update azcopy version (#11446)

Database

  • [10584] [DocDB] Avoid creating generator for every random UUID
  • [11095] [YCQL] Reduce conversion between rapidjson::Document and common::Jsonb, take 1.5
  • [11346] [YSQL] Fix bug in YBCIsSingleRowUpdateOrDelete
  • [11347] [YSQL] Fix bug in ALTER TABLE ADD PRIMARY KEY
  • [YCQL] Move batch ID generator as field of AuditLogger
  • [YCQL] Revert Reduce conversion between rapidjson::Document and common::Jsonb (This was added in 2.6.11.0.)

Known issues

Yugabyte Platform

N/A

Database

N/A

v2.6.13.0 - Feb 10, 2022

Build: 2.6.13.0-b5

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.13.0-b5

Improvements

Yugabyte Platform

N/A

Database

  • [7719] [DocDB] Introduce Aggregation Function for Metrics

Bug fixes

Yugabyte Platform

  • [PLAT-1942] Backup/restore failing on KMS enabled universes
  • [PLAT-2705] Platform restart can leave some tasks in incomplete stuck state

Database

  • [8023] [11142] [YQL] Enable DocDB to process lookups on a subset of the range key

Known issues

Yugabyte Platform

N/A

Database

N/A

v2.6.12.0 - Feb 2, 2022

Build: 2.6.12.0-b11

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.12.0-b11

Bug fixes

Yugabyte Platform

  • [PLAT-289] Stopped node should not allow Release action
  • [PLAT-2241] Replace non-unicode symbols in tool and traceback output decode
  • [PLAT-2613] Adding a runtime config flag to retain shell process cmdOutputLogs.
  • [PLAT-2832] [PLAT-2833] [PLAT-2938] terminate pools fixup for python 2.7
  • [PLAT-2832] [PLAT-2833] Clean exit handler terminate pools on exit and shutdown logging
  • [PLAT-2832] [PLAT-2833] Reduce max_msg_size further to just 2MB
  • [PLAT-2832] [PLAT-2833] yb_backup.py script logs not captured in application.log sometimes

Database

  • [10482] [DST] Rate-limit Create/Delete Snapshot requests
  • [10571] A separate flag to check for large clock skew on hybrid clock reads
  • [10589] [YSQL] ysql_dump duplicates primary key for partition table
  • [11090] [YSQL] Fix incorrect scan result due to scan key pushdown
  • [11167] [YSQL] Release resources on YbScanDesc freeing
  • [11195] [DST] [PITR] Disallow consecutive restores guarded by a flag
  • [11198] [DocDB] Restores should not fail if tablet is moved/deleted off a tserver

Known issues

Yugabyte Platform

N/A

Database

N/A

v2.6.11.0 - Jan 25, 2022

Build: 2.6.11.0-b3

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.11.0-b3

Bug fixes

Yugabyte Platform

  • [PLAT-2751] YSQL_DUMP based backup-create and backup-restore
  • [PLAT-2759] Wrap JSON response from yb_backup in try-catch
  • [PLAT-2765] Redact GCP creds in provider creation audit log

Database

  • [6149] [10587] [YSQL] Partitioned table primary key is not correctly inherited by partitions
  • [10912] [YSQL] Send truncate colocated requests for the indexes associated with the table
  • [11095] [YCQL] Reduce conversion between rapidjson::Document and common::Jsonb

Known issues

Yugabyte Platform

N/A

Database

N/A

v2.6.10.0 - Jan 21, 2022

Build: 2.6.10.0-b3

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.10.0-b3

Improvements

Yugabyte Platform

N/A

Database

  • [10900] [YBase] Allow the user to specify the UUID for master removal (change to yb-admin change_master_config)
  • [10513] [DocDB] TTL expiry: adding file deletion option to universal compaction picker

Bug fixes

Yugabyte Platform

[PLAT-2666] Fix: Azure YW provider does not allow port customization

Database

[10995] Release the memtable mutex before going to sleep.

Known issues

Yugabyte Platform

N/A

Database

N/A

v2.6.9.0 - Jan 14, 2022

Build: 2.6.9.0-b1

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.9.0-b1

Bug fixes

Yugabyte Platform

[PLAT-2626] Fix backup deletion issue during destroy universe

Database

[11054] [YCQL] Aggregate updates to JSONB column before inserting Subdoc

Known issues

Yugabyte Platform

N/A

Database

N/A

v2.6.8.0 - Jan 10, 2022

Build: 2.6.8.0-b15

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.8.0-b15

Improvements

Yugabyte Platform

  • [PLAT-506] Allow custom port in AWS host base
  • [PLAT-2161] Add indices on customer_task and task_info to improve Tasks page performance
  • [PLAT-2356] Get data directories by querying the tablet server's /varz endpoint
  • [PLAT-2531] Allow ".local" TLD in AWS host base

Database

  • [8730] [DST] Enable compaction and flush of system catalog tablet from admin CLI.

Bug fixes

Yugabyte Platform

  • [10907] [Platform] [Backups] Prevent double configuration file uploading
  • [10950] [Platform] [Backups] Allow tablet server to have no tablets for the table
  • [PLAT-1746] Delete prometheus_snapshot directory once platform backup package is created
  • [PLAT-2453] Disable Encryption-in-Transit menu item when TLS is disabled
  • [PLAT-2517] Fix the priority-regex for Prometheus in replicated.yaml
  • [PLAT-2538] Fix missing yugabytedb.crt when newly created self-signed cert is rotated
  • [PLAT-2638] Fix V99 SQL file to prevent checksum mismatch issues while upgrading

Database

  • [8998] [DocDB] Fixed TabletPeer::Shutdown to shutdown strand_
  • [10845] [xCluster] Fix rename universe replication with multiple renames
  • [10943] [YSQL] Masking LDAP bind password in logs after authentication fails
  • [10962] Use random_generator_mt19937 which is seeded via /etc/urandom

Known issues

Yugabyte Platform

N/A

Database

N/A

v2.6.7.0 - Dec 3, 2021

Build: 2.6.7.0-b10

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.7.0-b10

Improvements

Yugabyte Platform

  • [PLAT-2306] Add UI support for GCP user tags
  • [PLAT-2371] Use include_tasks instead of include for backup util install

Database

  • [10576] [YSQL] Import Reject extraneous data after SSL or GSS encryption handshake.
  • [10579] [YSQL] Import libpq: reject extraneous data after SSL or GSS encryption handshake.

Bug fixes

Yugabyte Platform

  • [PLAT-2157] Flyway plugin patch for ignoreMissingMigration and default java package issue
  • [PLAT-2298] Disable third-party flyway plugin in yugabundle
  • [PLAT-2314] [PLAT-2321] Fix backup util behavior on error for onprem providers
  • [PLAT-2315] Fix backup failure after root cert rotation
  • [PLAT-2373] Get rid of repeated migrations
  • [Platform] Fix Python vulnerabilities
  • [Platform] Resolve vulnerabilities by upgrading dependency packages

Database

N/A

Known issues

Yugabyte Platform

N/A

Database

N/A

v2.6.6.0 - Nov 16, 2021

Build: 2.6.6.0-b10

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.6.0-b10

Improvements

Yugabyte Platform

  • [PLAT-490] Display timezone with timestamp
  • [PLAT-1962] Add optional AWS KMS Endpoint field while creating KMS config.
  • [PLAT-2144] Prometheus K8s metrics storage settings

Database

  • [10428] [DocDB] Improve logging for SST file expiration

Bug fixes

Yugabyte Platform

  • [PLAT-2109] Skip hostname validation in certificate
  • [PLAT-2167] Fix 3000 seconds timeout for IAM profile retrieval operation
  • [PLAT-2189] Fix universe creation on airgap install
  • [Platform] [UI] Add an optional field AWS KMS Endpoint while creating KMS config

Database

  • [8229] [Backup] Repartition table if needed on YSQL restore
  • [8251] [9825] Add Transaction Cleanup to CREATE INDEX
  • [10304] [DocDB] Fix deadlock in ProcessTabletReportBatch
  • [10430] [YSQL] Limit to IPv4 for sys catalog initialization
  • [10503] [DocDB] Add GFlag to trust value-level TTL metadata during file expiration.
  • [10504] [DocDB] Move value TTL metadata collection to DocWriteBatch

Known issues

Yugabyte Platform

N/A

Database

N/A

v2.6.5.0 - Oct 29, 2021

Build: 2.6.5.0-b4

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.5.0-b4

Improvements

Database

9606 [DocDB] Add flag --force for command delete_tablet to set state TABLET_DATA_DELETED for tool yb-ts-cli

Yugabyte Platform

N/A

Bug fixes

Database

  • 9924 [YSQL] Always check schema name on backup import
  • 10042 [Backup] Allow system table for YEDIS restore
  • 10415 [backup] Backup-restore failures for old backups.

Yugabyte Platform

  • [PLAT-1634] Backup page is not loading because of empty config column
  • [PLAT-1934] Adding UI to set KUBE_DOMAIN
  • [PLAT-2113] [PLAT-2116] Fix HA failing with entity_too_large
  • [PLAT-2020] [PLAT-2041] Fix HA on IPv6-enabled K8s setup
  • [YB] Replaced the Busybox image with a YB image, as some environments are unable to access Busybox

Known issues

Database

N/A

Yugabyte Platform

N/A

v2.6.4.0 - Oct 26, 2021

Build: 2.6.4.0-b3

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.4.0-b3

Improvements

Database

  • [10150] [YSQL] Add functionality for the yb_extension role
  • [10317] [YSQL] Import "Allow users with BYPASSRLS to alter their own passwords."

Yugabyte Platform

  • [9612] [PLAT-26] [PLAT-1674] [Platform] Add logs purge threshold option to zip_purge_yb_logs.sh
  • [PLAT-1897] Make client_max_body_size configurable in replicated

Bug fixes

Database

  • [9909] [YSQL] Further fix backup restore for NULL col attr
  • [9957] [YSQL] Fix memory usage when translating decimal data into Postgres's datum format.
  • [9963] [Backup] Fix to reallow YEDIS on restore
  • [10240] Add IPv6 address filters to default value of net_address_filter
  • [10364] [YCQL] Fix issue when dropping col that is not in an existing non-partial secondary index

Yugabyte Platform

N/A

Known issues

Database

N/A

Yugabyte Platform

N/A

v2.6.3.0 - Oct 22, 2021

Build: 2.6.3.0-b12

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.3.0-b12

Improvements

Database

  • [3785] [DocDB] Add support for LZ4 compression
  • [7612] [DocDB] Allow TTL-expired SST files that are too large for compaction to be directly expired
  • [7612] [DocDB] Improves TTL handling by removing a file completely if all data is expired
  • [7612] [DocDB] Modified compaction file filter to filter files out of order
  • [10019] [DocDB] Add support for zlib compression
  • [10110] [DocDB] Enables compaction file filter during manual compactions

Yugabyte Platform

  • [9113] [9114] [Platform] Populate the task id field in the backup table
  • [PLAT-1753] Enable taking backups using custom ports

Bug fixes

Database

  • [9436] [YSQL] Statement reads rows it has inserted
  • [10077] [DocDB] Compaction file filter factory uses HistoryRetention instead of Schema
  • [10164] [DocDB] Max file size for compactions should only affect TTL tables
  • [YSQL] Restart metrics webserver when postmaster recovers backend

Yugabyte Platform

  • [PLAT-1819] [PLAT-1828] Release backup lock when Platform restarts, and update Backup state

Known issues

Database

N/A

Yugabyte Platform

N/A

v2.6.2.0 - Oct 12, 2021

Build: 2.6.2.0-b36

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.2.0-b36

Improvements

Database

  • [8807] [YBase] Add HTTP URL param for limiting the number of tables whose metrics are displayed
  • [9370] Add Snappy and LZ4 traffic compression algorithms
  • [9685] [XCluster] Make delete_universe_replication fault tolerant
  • [9762] Update yb-thirdparty dependencies to use cqlsh v3.10-yb-10
  • [10064] [xCluster] Lag Metric Improvements
  • [10139] [YBase] Avoid unnecessary table locking in CatalogManager::DeleteYsqlDBTables
  • [10199] [YSQL] Import Reset memory context once per tuple in validateForeignKeyConstraint.

Yugabyte Platform

  • [8510] [Platform] Allow the deletion of Failed Backups
  • [8637] [PLAT-1672] Adding APIs to schedule External user-defined scripts.
  • [PLAT-1575] No HA config exists is now logged as INFO

Bug fixes

Database

  • [1252] Do not link with system libpq
  • [2318] [2DC] yb-admin should prevent setup_universe_replication from self-referencing.
  • [4421] [YCQL] Disallow Unauthenticated LDAP binding + add handling for ycql_ldap_search_filter
  • [5920] Fix bootstrapping with preallocated log segment
  • [8580] [9489] [YSQL] Inherit default PGSQL proxy bind address from rpc bind address
  • [8772] Fix fatal that occurs when running alter_universe_replication and producer master has changed
  • [9170] [3375] [9934] [DocDB] Drive aware LBing when removing tablets
  • [9572] [YSQL] Correctly determine is_yb_relation for row-marked relations when preparing target list
  • [9763] Fix accept failure handling in linux
  • [9781] Mark snapshot as deleted if tablet was removed
  • [9806] [DocDB] fixed Batcher::FlushBuffersIsReady
  • [9892] Mask sensitive gflag info
  • [9927] [YCQL] Handle unset correctly
  • [9933] [YCQL] DESC TABLE does not directly match the "CREATE TABLE" command for number of tablets.
  • [9933] [YCQL] Update logic for using num_tablets from internal or user requests.
  • [9947] [YSQL] remove runtime tag for ysql_disable_index_backfill
  • [10085] [YSQL] fix FATAL caused by wrong sum pushdown
  • [10104] [Tools] Explicitly removing transaction metadata field during ListSnapshots

Yugabyte Platform

  • [PLAT-1611] [PLAT-1671] Add python dependencies required for executing external scripts
  • [PLAT-1682] Fix node comparison function from accessing undefined cluster
  • [PLAT-1725] Full move fails midway if system tablet takes more than 2 mins to bootstrap
  • [Platform] [UI] NFS config failed in 2.6
  • [Platform] Use TaskInfo instead of CustomerTask in shouldIncrementVersion check

Known issues

Database

N/A

Yugabyte Platform

N/A

v2.6.1.0 - Sept 3, 2021

Use version 2.6.2.0 or later

Release v2.6.1.0 contains an authentication vulnerability in YCQL LDAP. YSQL is not affected.

If you're using YCQL LDAP with v2.6.1.0 and can't update to 2.6.2.0 immediately, disable LDAP authentication for YCQL by setting the --ycql_use_ldap flag to false, which reverts the authentication method to hashed password.

Build: 2.6.1.0-b49

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.1.0-b49

Improvements

Database

  • [4014] [YSQL] Indexes on Enum based columns
  • [4421] [YCQL] Enable LDAP based authentication
  • [6470] [YSQL] Enable ALTER SCHEMA RENAME
  • [8418] Add filter to list_snapshot_schedules
  • [8757] [xCluster] Make setting up replication synchronous
  • [9317] [YBase] Introduce mutex for permissions manager
  • [9333] [Backup] Improve internal PB structure to store backup metadata into SnapshotInfoPB file.
  • [9370] Implement network traffic compression
  • [9762] (Part 1) Populate partial index predicate in "options" column of system_schema.indexes

Yugabyte Platform

  • [3452] [Platform] UI support for root cert rotation
  • [8489] [Platform] Add support for root cert rotation for custom certs
  • [8789] Add support for certificate chaining in platform/yb-client.
  • [9063] Support metrics filtering for /prometheus-metrics endpoint
  • [9451] Default AWS EBS volume type changed from GP2 to GP3

Bug fixes

Database

  • [8114] [YSQL] [Backup] Partial index syntax error in the ysql_dump output
  • [8294] Fix missing conflict when creating row using multiple inserts
  • [8480] Add check for recursive shared lock
  • [8592] Check capability before sending graceful cleanup
  • [8804] [YSQL] [Backup] Support in backups the same table name across different schemas.
  • [9032] [YCQL] Honour token() conditions for all partition keys from IN clause
  • [9270] [Backup] Fixed compatibility issue in yb_backup.
  • [9314] [PITR] Cleanup sys catalog snapshots
  • [9418] [xCluster] Add cdc_state Schema Caching to Producer Cluster
  • [9550] [YSQL] output NOTICE when CREATE INDEX in txn block
  • [9605] [PITR] Fix auto cleanup of restored hidden tables
  • [9616] Fix master crash when restoring snapshot schedule with deleted namespace
  • [9654] [xCluster] Limit how often ViolatesMaxTimePolicy and ViolatesMinSpacePolicy are logged
  • [9656] [xCluster] Update cdc_min_replicated_index on BootstrapProducer
  • [9657] [YCQL] Show static column in the output of DESC table
  • [9746] Set WAL footer close_timestamp_micros on Bootstrap
  • [9812] [YSQL] Check database is colocated before adding colocated option for Alter Table

Yugabyte Platform

  • [1525] [Platform] New Universe creation gets public IP assigned even with flag = false
  • [9417] [9662] Set enable_log_retention_by_op_idx to true by default and bump update_metrics_interval_ms to 15000
  • [9571] [Platform] Backup and Restore failing in k8s auth enabled environment
  • [9692] Fix initialization of async cluster form values for existing universes without read-replica
  • [9713] [Platform] Do not perform version checks if HA is not set
  • [9786] Universe Actions-> Add Read Replica is failing on 2.6.1.0-b23
  • [PLAT-1644] Fix k8s universe creation failure for platform configured with HA
  • [PLAT-525] [Platform] Add IP address to SAN of node certificates

Known issues

Database

N/A

Yugabyte Platform

N/A

v2.6.0.0 - July 7, 2021

Build: 2.6.0.0-b69

Downloads

     

Docker

docker pull yugabytedb/yugabyte:2.6.0.0-b69

New features

Database

Point-in-time recovery

This feature allows you to restore the state of a cluster back to a previous point in time. This release is focused on support for the YCQL API. You can set up PITR at a YCQL keyspace level and recover from data changes and from metadata operations, such as CREATE TABLE / CREATE INDEX / ALTER TABLE / DROP TABLE / DROP INDEX. Support for YSQL is still very limited, only allowing recovery of data. (The items in this list cover new functionality as well as bug fixes.)

  • [7126] [7135] Restore table schema
  • [7126] Add restore_snapshot_schedule to admin
  • [7126] Add yb-admin commands to create and list snapshot schedules
  • [7126] Cleanup deleted tablets
  • [7126] Cleanup not restored tables and tablets
  • [7126] Cleanup outdated snapshots
  • [7126] Correct history retention for newly added tablets
  • [7126] Fix SnapshotScheduleTest.RemoveNewTablets
  • [7126] Fix YbAdminSnapshotScheduleTest.UndeleteIndex
  • [7126] Handle master failover
  • [7126] Load snapshot schedules during bootstrap
  • [7126] Restore deleted table
  • [7126] Special history retention mechanism
  • [7126] Take system catalog snapshot
  • [7137] Provide ability to create snapshot schedule for YSQL database and YCQL keyspace
  • [8417] Implement delete_snapshot_schedule
  • [8419] PITR related fixes
  • [8543] Add test for need to increase table version on restore
  • [8773] Add DDL log
  • [9046] Fix crash when using multiple masters
  • [9162] Fix stack overflow in filtering iterator
  • [9171] Fix restoring snapshot to time before history cutoff

Yugabyte Platform

  • [7215] Added an ability to select multiple backups for deletion rather than deleting individual backups.
  • [7278] [7446] Added improved search usability for Live and Slow queries by adding autocomplete suggestions, better filtering and navigation.
  • [7421] In order to enhance security, encryption is enabled by default for both client to node and node to node cases.
  • [7474] [7725] Platform now supports creating multi-instance cloud providers. Cloud provider components to allow adding more than one config for the same provider.
  • [7799] Added support for AWS GP3 volumes during universe creation from the Platform. The disk size and IOPS configuration for GP3 drives are configurable, whereas throughput is not configurable and is set to default value of 125MiB/sec.

Improvements

Database

  • [1248] [YSQL] Create background task for verifying tablet data integrity
  • [1479] [YBase] Allow normal load balancing for DEAD+BLACKLISTED TS
  • [3040] [YBase] Allow global leader load balancing
  • [3460] [YSQL] Integrate Orafce extension with Yugabyte
  • [4580] add metric for wal files size (#7260)
  • [6631] [YBase] Allow support for prefixes while specifying placement info
  • [6636] [DocDB] Cache table->tablespace->placement information in YB-Master
  • [6845] [YSQL] Introduce the 'use_node_hostname_for_local_tserver' gflag to use DNS name instead of IP for local tserver connection
  • [6947] [YBase] Allow leader balancing for DEAD nodes
  • [6982] [YSQL] Specify read time for catalog tables to guarantee consistent state of catalog cache
  • [7047] [YSQL] Read minimal possible number of columns in case of index scan
  • [7068] Allow reloading of the config file with 'ts-cli'
  • [7108] [DocDB] Disable tablet splitting during index backfill
  • [7199] track and display heartbeat roundtrip time from each yb-tserver in yb-master UI (#7239)
  • [7355] [YSQL] check backfill bad connection status
  • [7455] [YCQL] Update index from transaction with cross-key statements.
  • [7487] [DocDB] Remove unnecessary Value decoding and TTL calculation in doc_reader.cc
  • [7509] [YCQL] Allow both = and != operator in partial indexes.
  • [7509] [YCQL] Support partial indexes
  • [7534] [YSQL] Support ALTER TABLE ADD PRIMARY KEY for colocated tables
  • [7543] [DocDB] Add uptime into master home UI
  • [7547] Set flags automatically based on the node's available resources
  • [7557] [YCQL] Support != operator
  • [7564] [YBase] Auto tune ysql_num_shards_per_tserver similar to yb_num_shards_per_tserver
  • [7600] [YSQL] Explain --masters in ysql_dump cli.
  • [7617] [DocDB] Record and display disk usage by drive
  • [7628] Add LDAP libraries as special case for YB client packaging
  • [7632] [YCQL] Support upsert for JSONB column field values
  • [7647] [DocDB] Adds Num SST Files to TS tablets view
  • [7649] [YCQL] Block secondary index creation on static columns.
  • [7651] [YSQL] Always listen on UNIX domain socket
  • [7661] [DocDB] Run manually triggered compactions concurrently
  • [7705] [YSQL] prioritize internal HBA config
  • [7724] [YSQL] add GUC var yb_index_state_flags_update_delay
  • [7748] [YSQL] ALTER ADD PK should do column checks
  • [7756] Make Encryption at Rest Code Openssl 1.1.1 Compatible
  • [7804] [DocDB] Make WritableFileWriter buffer gflag controllable
  • [7805] Share Histograms across tablets belonging to a table instead of having Histograms (in TabletMetrics and other objects) separately for each tablet. Share Histograms in RocksDBStatistics across various tablets belonging to a table.
  • [7813] [YSQL] YSQL dump should always include HASH/ASC/DESC modifier for indexes/pkey.
  • [7844] Set tcmalloc max cache bytes for yb-master similar to the yb-tserver.
  • [7873] [DocDB] Initialize block cache for master/sys_catalog
  • [7915] Add flag to allow dumping lock batch keys in case of timeout
  • [7916] CQL call timeout
  • [7944] [YSQL] deprecate flag ysql_wait_until_index_permissions_timeout_ms
  • [7977] [DocDB] Send per tablet disk usage to the master via heartbeats
  • [8002] [DocDB] Increase thresholds for master long lock warnings
  • [8026] Bump up timestamp_history_retention_interval_sec to 900s
  • [8027] A separate YSQL flag for yb_client_timeout
  • [8037] [DocDB] Refactor memory management for tablets into a separate class
  • [8052] Add ability to configure cipher list
  • [8073] Drop rocksdb memstore arena from 128kb to 64kb
  • [8330] [YCQL] Provide capability to skip writing null JSONB attribute in UPDATE statement
  • [DocDB] Added a max_depth param to the mem-trackers view (#7903)
  • Default fail_on_out_of_range_clock_skew=false

Yugabyte Platform

  • [5296] Allow editing cloud provider in case of provider is not in use
  • [5733] Disabled "stop process" and "remove node" for a single node universe
  • [5946] Clock sync is now checked while creating or expanding the universe. Clock sync is added to health checks now.
  • [6913] [6914] Add ability to reset slow query data and hide slow queries.
  • [6924] When a node is removed/released from a universe, hide the "Show Live Queries" button.
  • [7171] Added a validation that the on-prem instance type name cannot be the same for different customers on the same platform.
  • [7193] Fixed issues with Run sample apps to have the deterministic payload and unify behaviour of YCQL and YSQL app.
  • [7223] [7224] Added a new “Show Universes” action in the Actions menu. This provides a way for users to see all the associated universes that are using a particular KMS config. We are now also showing the list of universes as a modal dialog box associated with the certificate.
  • [7311] Added appropriate warnings while using ephemeral storage for the cases like stopping a VM or pausing an universe as it will potentially lead to data loss.
  • [7416] Platform: Changed default port of On-Prem provider to 22 (#7599)
  • [7447] When universe creation is in progress, other operations which require the Universe in "ready" state should be disabled like "Edit universe", "Read replicas", "Run sample apps", etc.
  • [7536] You can now specify an SSH username even when not using a custom key-pair.
  • [7591] Added labeling for the Azure Instance Type dropdown similar to GCP/AWS.
  • [7624] Removed refetch on window focus for slow queries
  • [7706] Edit backup config credentials. (#8536)
  • [7732] [UI] remove beta tag from Azure provider tab
  • [7736] Change the username help info for certificate based authentication
  • [7780] Fixed an issue causing old backups to not get deleted by a schedule.
  • [7918] Add us-west2 GCP metadata to Platform
  • [7950] Navigating to a universe with KMS enabled will show this error due if something has been misconfigured
  • [8038] Default metrics button now points to the Prometheus metrics endpoint.
  • [8051] Redact sensitive data and secrets from audit logs
  • [8144] Validate custom certificates to ensure they are signed by the correct CA, and that the cert is for the correct node
  • [8302] Added Platform's metrics endpoint (/prometheus_metrics) as a scrape target to the Prometheus instance that is configured as part of the Platform install
  • [8460] Made proxy timeout configurable, Default value is 60 seconds.

Bug fixes

Database

  • [4412] [DocDB] Fix Load balancer state for move operations
  • [4437] [8731] [DocDB] disabled bloom filters for master tablet and fixed DocDBAwareV2FilterPolicy compatibility for range-partitioned co-located tables
  • [5854] [DocDB] Handling tablet splitting errors at YBSession level
  • [6096] [YSQL] Fix crash during bootstrap when replaying WAL of deleted colocated table
  • [6509] [YSQL] Fix leaking when a portal is used to query in small batches (refer to the note following this list)
  • [6672] [DocDB] fix for deadlock in GlobalBacktraceState constructor
  • [6789] [YSQL] Fix ysql_dumpall and ysql_dump to work with Tablespaces
  • [6821] [7069] [7344] (YCQL) Fix issues when selecting optimal scan path
  • [7055] [YCQL] Fixed bugs in processing LIMIT and OFFSET clause.
  • [7324] [YSQL] Early bailout when bind condition is an empty search array
  • [7369] [YSQL] Respect leader affinity on master sys catalog tablet
  • [7398] [DocDB] Crashing after CopyTo from parent to child causes child bootstrap failure
  • [7398] [DocDB] Forcing remote bootstrap to replay split operation causes seg fault
  • [7484] [DocDB] Sort the hosts of tablet replicas consistently in Admin UI
  • [7499] [YSQL] Import pg_dump: label INDEX ATTACH ArchiveEntries with an owner.
  • [7602] [DocDB] FlushTablets rpc causes SEGV of the tserver process
  • [7641] [YCQL] Fix checks in index update path that determine full row removal.
  • [7678] [YSQL] Import Fix race condition in psql \e's detection of file modification.
  • [7682] [YSQL] Import Forbid marking an identity column as nullable.
  • [7702] [YSQL] Import Avoid corner-case memory leak in SSL parameter processing.
  • [7715] [YSQL] Prevent DocPgsqlScanSpec and DocQLScanSpec from accepting rvalue reference to hash and range components
  • [7729] Avoid recreating aborted transaction
  • [7729] Fix checking ABORTED txn status at follower
  • [7741] [YSQL] Import Don't leak malloc'd strings when a GUC setting is rejected.
  • [7791] [YSQL] Import Fix psql's \connect command some more.
  • [7798] [DocDB] Only the YB-Master Leader should refresh the tablespace info in memory
  • [7802] [YSQL] Import Fix connection string handling in psql's \connect command.
  • [7806] [YSQL] Import Fix recently-introduced breakage in psql's \connect command.
  • [7812] [YSQL] Import Fix connection string handling in src/bin/scripts/ programs.
  • [7835] Don't crash when trying to append ValueType::kTombstone to a key
  • [7894] Keep ScopedRWOperation while applying intents for large transaction
  • [7937] [YSQL] Avoid unnecessary secondary index writes for UPDATE on table with
  • [7979] ysql Import Fix handling of -d "connection string" in pg_dump/pg_restore.
  • [8006] [YSQL] Import Fix out-of-bound memory access for interval -> char conversion
  • [8029] Fix slow queries failing to fetch on client-to-node TLS encrypted universes
  • [8030] [YSQL] Import Redesign the caching done by get_cached_rowtype().
  • [8047] [YSQL] Import Fix some inappropriately-disallowed uses of ALTER ROLE/DATABASE SET.
  • [8065] [DocDB] Fix Sys Catalog Leader Affinity with Full Move
  • [8079] Ensure leadership before handling catalog version
  • [8101] [YCQL] Fixed CQLServiceImpl::Shutdown
  • [8118] [YSQL] Import 'Fix memory leak when rejecting bogus DH parameters.'
  • [8150] [8196] Fix preceding op id in case of empty ops sent to the follower
  • [8204] [YBase] GetLoadMoveCompletionPercent returns an incorrect 100% if tservers haven't heartbeated their tablet reports
  • [8254] No leader lease needed for BackfillIndex
  • [8348] Correctly handling a failure to create a priority thread pool worker thread
  • [8360] [YBase] Correctly compare running workers
  • [8388] [YSQL] prevent temp indexes from using lsm
  • [8390] Fix NPE Handling for indexed_table_id
  • [8496] Downgrade gperftools to 2.7
  • [8591] [DocDB] Add protection against missing UserFrontiers in older SST files during intents cleanup
  • [8766] [DocDB] recreate table with the same name could cause insert to fail
  • [8834] [YCQL] Remove incorrect CHECK condition added in D10931
  • [9108] Tablespace task in YB-Master should skip system_postgres namespace
  • [YSQL] Try all preferred zones in master sys catalog affinity task and suppress logs

New built-in functions

[6509] adds several new built-in functions that can be used to collect internal memory usage data:

  • yb_getrusage() returns the output from the system getrusage() call.
  • yb_mem_usage_kb() returns memory usage in kilobytes for the current session in the proxy server.
  • yb_mem_usage() is the text version of yb_mem_usage_kb(). Returning a text value allows Yugabyte to provide more details than just the total usage.
  • yb_mem_usage_sql_b and yb_mem_usage_sql_kb return memory usage in bytes and kilobytes respectively by the SQL layer of the current session in the proxy server.
  • yb_mem_usage_sql returns SQL usage in text. The text value may contain more details than just the total usage.

These functions are enabled by default for new installations on 2.6. But, if you’re upgrading from v2.4 or an earlier version, you can enable them manually by adding them to pg_proc.

Yugabyte Platform

  • [1342] Fixing the error message when the get host info call to cloud providers fails
  • [7007] Fixed an issue where Restore backup dialog allowed empty/no universe name selected.
  • [7408] Retry Task button should not be visible for tasks other than "Create Universe" Task, as it’s the only task that supports retry.
  • [7437] Since Kubernetes currently doesn't support read replicas, disabled it from the UI; k8s providers are also not shown when configuring a read-replica.
  • [7441] Added field-level validation for User Tags to disallow "Name" as a key for a tag
  • [7442] Only include the queries run by the user under slow queries
  • [7444] Fixed an issue in Edit Universe, as user was able to edit User Tags but not save them
  • [7554] Fixed an issue where error toaster appears even when the Provider is added successfully
  • [7562] In case of Encryption at rest configuration fixed an error in configuring KMS provider.
  • [7593] [7895] Fixed and issue where users Unable to create azure universe with custom image from image gallery
  • [7656] After manually provisioning an on-premises node, create universe tries to use "centos" user, not "yugabyte"
  • [7687] YSQL health check fails when YSQL auth is enabled
  • [7698] Custom SMTP Configuration API returns unmasked SMTP password
  • [7703] Can't send email for custom SMTP settings without authentication (empty username)
  • [7704] Backup to S3 fails using Yugabyte Platform instance's IAM role
  • [7727] [7728] Fix UI issues with k8s provider creation and deletion
  • [7769] Prevent adding on-prem node instance with duplicate IP
  • [7779] Health check fails on k8s portal for all the universes on clock synchronization with FailedClock synchronization and Error getting NTP state
  • [7810] Health check emails not working with default SMTP configuration
  • [7811] Slow queries is not displaying all queries on k8s universe pods
  • [7841] Resume Universe Failure. (#7508)
  • [7864] Delete associated backups after deleting the universe. (#8579)
  • [7959] Disabling Node-to-Node TLS during universe creation causes universe creation to fail
  • [7995] Enable SSH pipelining
  • [8399] Fix read replica cluster addition failure
  • [8426] Remove duplicate "Clock Skew Alert Resolved" messages
  • [8503] Fix Add instance modal form to allow for adding instances in isolated region cases.
  • [8525] Audit migration failed on AWS portal
  • [8541] Returns bad request as a response when trying to create a provider with an existing name
  • [8611] Enable edit backup configuration for the active tab only. (#8673)
  • [8620] Reset the values on cancel. (#8626)
  • [8742] UI shows blank page after clicking on the edit provider configuration button
  • Universe alerts should be resolved when a universe is deleted (#7537)

Known issues

Database

N/A

Yugabyte Platform

N/A

Notes

New release versioning

Starting with v2.2, Yugabyte release versions follow a new release versioning convention. The preview release series, denoted by MAJOR.ODD, incrementally introduces new features and changes and is intended for development and testing only. Revision releases, denoted by MAJOR.ODD.REVISION versioning, can include new features and changes that might break backwards compatibility. For more information, see Releases overview.

Upgrading from 1.3

Prior to v2.0, YSQL was still in beta. Upon release of v2.0, a backward-incompatible file format change was made for YSQL. For existing clusters running pre-2.0 release with YSQL enabled, you cannot upgrade to v2.0 or later. Instead, export your data from existing clusters and then import the data into a new cluster (v2.0 or later).