What's new in the v2.16 STS release series

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

For an RSS feed of the release notes for all release series, point your feed reader to the RSS feed for releases.

v2.16.0.1 - January 6, 2023

Build: 2.16.0.1-b7

Third-party licenses: YugabyteDB, YugabyteDB Anywhere

Downloads

Docker

docker pull yugabytedb/yugabyte:2.16.0.1-b7

Improvements

YugabyteDB Anywhere

  • [PLAT-6203] Allow configuring HTTP proxy for S3 backups
  • [PLAT-6305] Upgrade azcopy version to 10.16.2

Database

Bug fixes

YugabyteDB Anywhere

  • [PLAT-6475] [PLAT-6787] [PLAT-6795] Fix systemd Resume universe failures, Restart ybc on hot cert reload, and Do nothing in the case of nonRestartUpgrade
  • [PLAT-6670] [PLAT-6671] [PLAT-6673] [PLAT-6674] [UI] [PITR] Bug fixes and improvements
  • [PLAT-6819] Fix platform upgrade failure due to missing null check for cron based schedules.

Database

  • [14614] [YSQL] Clean up after terminated connections

Known issues

N/A

v2.16.0.0 - December 14, 2022

Build: 2.16.0.0-b90

Third-party licenses: YugabyteDB, YugabyteDB Anywhere

Downloads

Docker

docker pull yugabytedb/yugabyte:2.16.0.0-b90

New features

YugabyteDB Anywhere

  • [PLAT-4138] Hot reload of certificates is now generally available
  • [PLAT-4402] Volume resize for k8s
  • [PLAT-4591] [PLAT-4593] [PLAT-6003] [PLAT-6004] [K8s] [UI] Allow specifying universe level helm overrides in UI
  • [PLAT-5167] [PLAT-6194] Incremental Backups (enable YBC) is now generally available, including UI
  • [PLAT-5295] Option to change backup expiry
  • [PLAT-5540] [UI] Edit volume size for K8s universe
  • [PLAT-5562] Enable Systemd by default during create universe step on the UI
  • [PLAT-5647] Create HARD_REBOOT node action only accessible via API
  • [PLAT-5748] Enable restarting a subset of xCluster config tables
  • [PLAT-5765] Add Disk/Container size metrics
  • [PLAT-6024] Service account linked IAM role credential for YBC backup/restore
  • [PLAT-5681] Handle aarch/ARM-based YBDB release
  • [PLAT-6256] AmazonLinux2 based machines support in YBA.

Database

  • [7614] [DocDB] Add an option to run a major compaction at a fixed interval
  • [10935] [CDCSDK] Provide tablet split support to CDCSDK Service
  • [12744] [CDCSDK] Composite type support
  • [13970] [CDCSDK] Alter table support with CDCSDK
  • [14069] [YSQL] Allow Batched Nested Loop joins for clauses that have expressions on outer variables
  • [15215] [yugabyted] The yugabyted UI is now enabled by default
  • [DB-2705] [YSQL] Introduce GFlag to control local file access
  • [Metrics] Add a metric "ql_write_latency" to track write latency, similar to ql_read_latency

Improvements

YugabyteDB Anywhere

  • [PLAT-2677] [PLAT-4687] Add GFlags metadata dynamically from the DB package into the platform for every kind of releases
  • [PLAT-4217] [xCluster] Add state to the xCluster table config
  • [PLAT-4563] Add Tablet splitting docDB metrics
  • [PLAT-5077] [PLAT-5615] Implement xCluster info banner & improve lag and alert queries
  • [PLAT-5236] Add xCluster table status support on UI
  • [PLAT-5366] [Backend] Support onprem provider for dedicated mode (R14)
  • [PLAT-5636] Added a separate metric section for Top K tables
  • [PLAT-5658] Top nodes and databases metric queries support
  • [PLAT-5671] Up-version Prometheus
  • [PLAT-5683] [UI] [PITR] Integrate new API changes
  • [PLAT-5693] Show submitting state while waiting for create xCluster config response.
  • [PLAT-5705] Improve the command to check the available memory on the DB nodes for software upgrades
  • [PLAT-5761] [PLAT-5762] Incremental backup schedule fixes and improvements
  • [PLAT-6053] [PLAT-6054] Enable toggling force delete for xCluster config
  • [PLAT-6082] [Incremental Backups] [UI] Provide option to delete incremental backup independently
  • [PLAT-6105] Add write latency table metric to top tables dashboard
  • [PLAT-6227] Handle the scenario of the universe paused when making the PITR API calls

Database

  • [12953] [YSQL] Populate query termination entry in pg_stat with OOM and seg fault errors
  • [13211] [YSQL] Integrate READ COMMITTED isolation with wait queues
  • [13371] [CDCSDK] CDCSDK metrics aggregation with stream level
  • [13609] [YSQL] Adding Geo-distribution helper functions
  • [13750] Add explicit GFlag macros for DEFINE_RUNTIME and DEFINE_NON_RUNTIME
  • [13807] [xCluster] Add APIs for changing role
  • [13815] [YSQL] Enhance passwordcheck with more checks
  • [14106] [CDCSDK] Add Java level APIs to fetch tablets from the cdc_state table
  • [14123] [DocDB] Propagate new AutoFlag configs to Tservers
  • [14128] [DocDB] Track ql_read_latency for SQL too
  • [14140] [YSQL] Import Make contrib modules' installation scripts more secure
  • [14265] [DocDB] speedup split child tablet local bootstrap by copying in-memory retryable requests structure from parent tablet
  • [14280] [DocDB] Avoid decoding doc hybrid time during compaction when possible
  • [14352] [YSQL] Allow for yb_db_admin users to access all yb_terminated_queries
  • [14378] [YSQL] Output current ysql_max_connections as a metric
  • [14474] [YSQL] Deprioritize expression pushdown in single line updates
  • [14498] [YSQL] Move recently added YB NodeTags to the end of the list
  • [14532] [DocDB] Add tcmalloc malloc/free stack trace sampling
  • [14574] [YSQL] Complete support for PARAM_EXEC pushdown
  • [14823] [CDCSDK] Change log level of line which indicates fetching next block from WAL in cdcsdk_producer
  • [14876] [CDCSDK] Change logging level for CDCSDK related client errors
  • [15091] [DocDB] Automatic tablet splitting is disabled by default in 2.16
  • [CDCSDK] Before image support for CDC with only record types Change and All

Bug fixes

YugabyteDB Anywhere

  • [PLAT-4006] Get progress in terms of tablet numbers during data migration.
  • [PLAT-4007] Do not wait for LB for added nodes
  • [PLAT-4433] Fill storage type in case it's empty
  • [PLAT-4678] Fix Abort backup API call in backups tab page
  • [PLAT-4910] [Master] Backup Page crashed on Paused universes
  • [PLAT-4931] [PLAT-5650] Remove dependency overrides for jackson libraries
  • [PLAT-5001] YSQL password is cut-off at $
  • [PLAT-5012] Add more attribute to consumed cloud resources
  • [PLAT-5026] [PLAT-5181] Make yugabundle resilient to multiple proxies
  • [PLAT-5160] [xCluster] [K8s] Deletion of an xCluster config fails with KeyCode not found
  • [PLAT-5198] Update read replica userIntent for useSystemd when upgrading to systemd
  • [PLAT-5330] Patch azure-identity 1.2.3 (nimbusds pinned)
  • [PLAT-5374] [PLAT-5385] Create an alert in the case of snapshot failure, use the restore snapshot schedule
  • [PLAT-5377] Delete unused node agent registrations for on-prem nodes
  • [PLAT-5414] Added Ansible Configure task for copying xxhsum bin before backup/restore
  • [PLAT-5423] Allow restore with new keyspace name containing hyphens, and also backed-up keyspace having hyphens
  • [PLAT-5426] Implement Restart XCluster Config Modal
  • [PLAT-5534] Improve backup state management
  • [PLAT-5571] Issues when universe is created with custom ports
  • [PLAT-5588] Backup/restore will handle retrieving credentials when IMDSv2 is set on EC2 instance
  • [PLAT-5594] Backup size misreported on completion using IAM role
  • [PLAT-5620] [PLAT-6113] Update the add table modal with the new table selection interface
  • [PLAT-5631] Add peer certs as a mandatory field for HA setup
  • [PLAT-5638] Fix failing ysqlsh connectivity health checks
  • [PLAT-5639] Fix deletion of expired scheduled backups
  • [PLAT-5641] Add form validation for invalid chars in xCluster config name
  • [PLAT-5646] [PLAT-5640] [PLAT-5670] Improve xCluster table selection
  • [PLAT-5655] [PLAT-5147] [PLAT-5851] Make ybc backups/restores idempotent
  • [PLAT-5657] Move K8s pod address template to AZ
  • [PLAT-5661] [PLAT-5820] Add non-blocking validation and harden the create xCluster config form
  • [PLAT-5667] Add gRPC interceptor to authenticate requests to node-agent from platform
  • [PLAT-5677] Fix memory leak in task executor shutdown
  • [PLAT-5680] Create universe progress bar shows incorrect progress info
  • [PLAT-5684] List Delete backups task at universe level
  • [PLAT-5692] Add retries when fetching the master UUID
  • [PLAT-5694] Fixed metrics query with average
  • [PLAT-5697] Replace MetricsPanel with MetricsPanelOld
  • [PLAT-5710] S3 restore fails when using an IAM role on the K8s service account
  • [PLAT-5711] Fix node-agent update broken by bug in config removal.
  • [PLAT-5715] Fix protoc file name for ARM in node-agent build.sh
  • [PLAT-5756] Fixing systemd nodeops
  • [PLAT-5758] Fix: Wrong storage location is sent when restoring entire backup
  • [PLAT-5759] Add namespace name to top table query result + filter out system_platform namespace.
  • [PLAT-5760] UI does not allow to add more nodes in Replica Cluster of On-Premises Data center
  • [PLAT-5767] fixing Ansible for RHEL9 graviton
  • [PLAT-5768] Fix trace name equality check
  • [PLAT-5768] Update lag metric name for table-level lag graph
  • [PLAT-5769] Fix task details status report for tasks
  • [PLAT-5770] Copy access key metadata information from the latest active key
  • [PLAT-5776] Redirect "Delete read replica" task to /universes//tasks
  • [PLAT-5822] Update xCluster config actions interfaces
  • [PLAT-5825] Raise Exception in case node is unreachable via ssh
  • [PLAT-5826] Read StorageClass from PVC instead of STS
  • [PLAT-5827] [PLAT-5630] Custom hook config exposed via runtime Configs
  • [PLAT-5860] properly handle storage config validation failure before backup
  • [PLAT-5863] Show schema name for YSQL tables during xCluster config creation
  • [PLAT-5864] Show master/tserver UI links even when tasks are running
  • [PLAT-5867] Creating universe with primary + read replica together is broken
  • [PLAT-5870] Add GFlags metadata for 2.17 major DB version
  • [PLAT-5872] Fix failure to upgrade universes to 2.15.2.1
  • [PLAT-5876] Get rid of import org.apache.commons.text dependency
  • [PLAT-5879] Set default lun_indexes ansible value to fix pause/resize universe of older univs
  • [PLAT-5880] [YBC] Wait for TASK_COMPLETE before interpreting task status
  • [PLAT-5900] [PLAT-5901] Have a boolean flag in list response for "All tables" in YCQL backup
  • [PLAT-5914] Edit read replica failure. Exception in pinging the yb-controller server
  • [PLAT-5964] Put database name in separate field in metric query response
  • [PLAT-5972] Manual provision of onprem nodes failed
  • [PLAT-5974] Add ap-northeast-3 to AWS provider UI
  • [PLAT-5977] Fix range bounded queries for query search bar
  • [PLAT-5978] Fix V208 DB migration + fix universe regions field retrieval
  • [PLAT-5986] Fix: Support bundle not picking YBC logs when All is checked from the list
  • [PLAT-5989] Move scrape_interval_sec to reference.conf
  • [PLAT-6010] Fix: All metrics are in loading state in UI
  • [PLAT-6013] [xCluster] Add a YBDB version check before performing IsBootstrapRequired
  • [PLAT-6017] Fix incorrect query key for target universe in xCluster details
  • [PLAT-6026] [PLAT-6029] Make top K query use single query + return lines in correct order
  • [PLAT-6028] Fix cluster average calculation for metrics with single function
  • [PLAT-6037] Prevent GFlags deletion through the Non-Restart upgrade option
  • [PLAT-6042] Fix Kubernetes CPU usage graph
  • [PLAT-6059] Fix configure_universe API
  • [PLAT-6074] Decrypt against all key versions for a key in azure KMS
  • [PLAT-6080] [Backup] [UI] Not able to select backups checkbox
  • [PLAT-6091] [PLAT-6126] Onprem custom home directory, Throw Bad Request in the case of a ybc backup restore to a non-ybc universe
  • [PLAT-6104] [Incremental Backups] [UI] Throw UI warning for full backup deletion request when associated incremental backup in progress
  • [PLAT-6110] [Incremental Backup] [UI] Provide edit option for Incremental Backup Interval in schedule backup policy
  • [PLAT-6123] [Backup] Show parallel thread if current backup is not ybc enabled
  • [PLAT-6124] enable_api_triggered_hooks flag should change if yb.cloud.enabled is modified at runtime
  • [PLAT-6127] Fix: Bring backup duration for non-incremental and full backups
  • [PLAT-6128] [PLAT-6129] Edit Incremental Schedule Backup frequency and reduce its minimum requirement
  • [PLAT-6137] Update xCluster card task link
  • [PLAT-6142] [PLAT-6143] [PLAT-6144] Fix: Inc backup location same as full backup,Node connect action does not update access key,Remove/populate empty row
  • [PLAT-6154] Avoid deletion of expired backups with missing storage config
  • [PLAT-6160] Fix the VM Image upgrade issue with YBC.
  • [PLAT-6168] Fix intermittent failures on node reboot
  • [PLAT-6169] switching Azure default image back to CentOS 7
  • [PLAT-6187] Fix hardcoded default toggle values
  • [PLAT-6196] [Backup] Advanced Restore Modal not working
  • [PLAT-6197] [Backup] Use "allType" for determining backup select type
  • [PLAT-6202] [PLAT-6250] Add UI error handling for undefined source/target universeUUIDs and invalid xClusterConfigUUID
  • [PLAT-6205] Prevent commenting of trust based auths for PostgreSQL connection
  • [PLAT-6213] [PLAT-3812] Verify that upgrade tasks don't need all the intent from UI
  • [PLAT-6229] In k8s overrides fix overrides overwriting each other data. Restrict Kubernetes overrides validation to only top level keys.
  • [PLAT-6233] [PLAT-6294] Fix for vol resize failure during shrink
  • [PLAT-6237] Fix the universe API calls to send enableYbc as true only during create universe and software upgrade
  • [PLAT-6239] Adding Update Package task to enum
  • [PLAT-6246] [xCluster] Delete xCluster task should not change status if it is in DeletedUniverse status
  • [PLAT-6271] Backport outlier table implementation and numerous bug fixes
  • [PLAT-6279] [PLAT-6261] Reboot is broken in master
  • [PLAT-6285] Fix currentInstanceType assignment in universe form
  • [PLAT-6286] [PLAT-6287] Tablet Split metrics fixes
  • [PLAT-6314] Using universeDefinitionTaskParams struct for node tasks instead of default values of NodeTaskParams.
  • [PLAT-6319] Fix Region migration
  • [PLAT-6342] ReadOnlyClusterCreate: Task retry leads to error "node name cannot be preset"
  • [PLAT-6375] Fix protection level in auth config if using existing crypto key
  • [PLAT-6377] Setting instance type in node details of universe
  • [PLAT-6396] Show error message from request in toast
  • [PLAT-6397] Move installThirdPartyPackageTask as part of backup/restore task group
  • [PLAT-6398] Report max replication lag across all nodes
  • [PLAT-6443] S3 backup failing with s3cmd 2.3.0 version when access_token specified
  • [PLAT-6444] Configure Throttle Parameters throws 404 and portal UI becomes blank when backup is in progress
  • [PLAT-6452] Remove old key from Master Advanced metric master_lsm_rocksdb_num_seek_or_next
  • [PLAT-6458] Couldn't set backup interval to 1 Hour, getting error as "Incremental backup interval must be less than full backup"
  • [PLAT-6479] Make instanceCheck compatible with old nodes which are created by old platform before adding universe and node UUID tags
  • [PLAT-6509] [Read Replica] Wrong number of nodes in add read replica
  • [PLAT-6544] Aborting a YB-Controller task from UI not propagating to YBC
  • [PLAT-6577] The Parallel Threads text box is not visible when restoring a non ybc backup onto a universe that has ybc installed on it.
  • [PLAT-6630] [PLAT-6656] Fix failure to remove a node if the underlying VM has failed
  • [xCluster] Backend support to restart replication for a subset of tables in one
  • [xCluster] Comparing table IDs is incorrect for bidirectional replication

Database

  • [10735] Fix TransactionLoader race on tablet bootstrap vs tablet delete
  • [10821] [YSQL] Cache sys catalog read request on local TServer side
  • [10921] [CDCSDK] Populate CDC stream cache with newly added table details
  • [10921] [CDCSDK] Support for newly added table to active stream's namespace
  • [11019] [yugabyted] Secure deployment of YugabyteDB cluster using yugabyted CLI (Phase 2). Added cert generation experience through yugabyted.
  • [11645] [YSQL] Wait for pending Perform RPCs to complete before aborting YB DDL transaction
  • [11849] [YSQL] Add distributed storage access statistics to EXPLAIN ANALYZE
  • [12068] [14047] [xCluster] Fix shutdown path of CDCConsumer
  • [12400] Obtain Tablet from TabletPeer as a shared_ptr to avoid incorrect memory access
  • [12442] [YSQL] Add colocation_id to pg_dump for materialized views
  • [13102] [DocDB] Fix deadlock in DoSplitTablet.
  • [13168] [YSQL] TPCC tests with restore failing with "Query error: schema version mismatch for table"
  • [13367] [YSQL] Avoid using plain text LDAP password via environment variable
  • [13446] [DocDB] Combine AutomaticTabletSplittingMovesToNextPhase and AutomaticTabletSplittingMultiPhase.
  • [13465] [YSQL] Batch upserts in CatalogManager::CopyPgsqlSysTables when creating namespace
  • [13540] [DocDB] Move row lock from primitive key type to primitive value type
  • [13575] [DocDB] Fixed negative metric value from thread_running category
  • [13779] [DocDB] Fix master UI on non-leader nodes when HTTPS is enabled
  • [13808] [DocDB] Backups fail when two same-name namespaces exist, one RUNNING and another DELETED
  • [13961] [DocDB] Add a URL param to reset histograms
  • [13988] [YSQL] Multibyte chars in pushdown expressions
  • [14005] [DocDB] fix potential duplicate WRITE_OP due to split and RPC timeout interference
  • [14056] [DocDB] Support xCluster + Packed columns when Producer/Consumer schema_versions don't match
  • [14109] [DocDB] Fix wait for safe time timeout by cleanup aborts task
  • [14112] [yugabyted] [QA] Hiding DB password from the logs
  • [14136] [YSQL] Enable yb_db_admin to ALTER/DROP/CREATE triggers like a superuser
  • [14153] [YCQL] Allow CQL calls to request tracing on a per-session/rpc basis
  • [14159] [CDCSDK] Intents get GCed during universe upgrade
  • [14163] [YQL] Improve logging in case of duplicate index error
  • [14184] [YSQL] Fix the partial write issue of writev/pwritev by adding looping logic
  • [14201] [YCQL] Fixing partition_hash() with multiple indexes
  • [14202] [YSQL] Avoid RPC from YSQL to local tserver when switching sub-txns
  • [14210] [DocDB] Add Guard Around Txn Coordinator Retry Logic for Failed Apply
  • [14212] [YSQL] Optimize relation's rd_replidindex preloading
  • [14225] [DocDB] disallow advance max_safe_time_returned_with_lease_ before NoOp of current term is replicated
  • [14289] [DocDB] Include subtransaction_id in value of weak intents
  • [14293] [CDCSDK] upgrading the universe from 2.15.3 to 2.15.4, causing intent GCed
  • [14296] [DST] Packed + Backup/Restore - Merge schema packing history on restore
  • [14298] [DST] [PITR] MetaCache flips replica state from failed to not failed for hidden tablets
  • [14309] [YSQL] Store TServerSharedObject by value in PgApiImpl
  • [14335] [YSQL] Release YbScanDesc on scan end
  • [14349] [xCluster] Fix get_xcluster_estimated_data_loss
  • [14365] [YSQL] Handle backups of range-partitioned indexes with null values in partition bounds
  • [14377] [YSQL] Do not pushdown expressions with collation
  • [14379] [DocDB] Fix Flags generated files for LTO builds
  • [14394] [yugabyted] gen_certs.sh file not present in the release versions.
  • [14407] [ysql] Fix missing NULL check for MyBEEntry in pgstat_report_query_termination()
  • [14424] [YCQL] Persist where predicate in IndexInfo for PartialIndexes
  • [14426] [yugabyted] [QA] Added validation for hostnames provided through CLI.
  • [14446] [YSQL] Enable yb_db_admin to SELECT/INSERT/UPDATE/DELETE rows in tables like a superuser
  • [14479] [CDCSDK] Add bool parameter to error out of UpdateCdcReplicatedIndex RPC fails on any TServer
  • [14533] [DocDB] Colocated table creation optimization
  • [14552] [DST] [PITR] Do not crash if table not found from colocated list
  • [14554] [DocDB] Fixed RBS file downloader trace
  • [14555] [xCluster] Use xCluster Role to determine when xCluster safe time is computed
  • [14561] [DocDB] Consolidate the use of RegisterFlagValidator and DEFINE_validator
  • [14582] [DocDB] Fix livelock issue in pessimistic locking
  • [14595] [CDCSDK] tserver crash during snapshot mode
  • [14596] [DocDB] JSON escape the GFlags in CallHome
  • [14632] [DocDB] disallow packed row for colocated tables
  • [14643] [DocDB] Fix strongly typed bool constants
  • [14652] Fix xcluster_safe_time_service Init
  • [14695] [YSQL] YBCRestartTransaction has no parameter
  • [14713] [yugabyted] [QA] 'yugabyted status' command shows Stopped even when the node is destroyed.
  • [14746] [CDCSDK] Fixing the erroneous behaviour of "cdcsdk_last_sent_physicaltime" metric
  • [14788] [CDCSDK] Fixes DDL messages for colocated tables
  • [14797] [DocDB] Prevent repeat resumption of waiting operation if first resumption was error
  • [14825] [YSQL] Fix ysql_dump use-after-free in getYbSplitClause
  • [14826] [DocDB] Rename enable_wait_queue_based_pessimistic_locking to enable_wait_queues
  • [14846] [CDCSDK] Add support for tablet split for newly added tables
  • [14855] [yugabyted] Java install check is no longer needed for yugabyted start command
  • [14881] [CDCSDK] Fix issue where "cdcsdk_sent_lag_micros" metric shows sudden peaks.
  • [14909] [CDCSDK] Fix issue where 'cdcsdk_change_event_count' metric is incremented even on empty batches
  • [14931] [CDCSDK] YBClient unable to find a TabletClient for child tablets which are split further
  • [14950] [CDCSDK] Add tablet_id param to GetTabletListToPollForCDC RPC
  • [15004] [CDCSDK] Data loss when streaming transaction intents for large tables
  • [15006] [DocDB] set same error to operations with same request id when retrying a batcher
  • [15025] [YCQL] Fixing Index updating by DELETE for a deleted row
  • [15031] [CDCSDK] Restrict compaction during the CDC snapshot
  • [15047] [CDCSDK] Stop hiding tablets when table deleted
  • [15051] [DocDB] Log schema packing versions
  • [15062] [CDCSDK] Differentiate between Update and Insert records in case of packed row
  • [15064] [15033] [CDCSDK] Restrict compaction only for CDC snapshot mode and for before image type
  • [15067] [CDCSDK] Java level changes in the API to create CDC stream for before image
  • [15100] [CDCSDK] Populate the old/new tuples correctly in the context of single shard update
  • [15124] [CDCSDK] Create rows for child tablets for all tablets of stream
  • [15124] [CDCSDK] Fix bug in GetTabletListToPollForCDC
  • [15136] [CDCSDK] Fix for crash when running CDCSDK with before image
  • [15154] [CDCSDK] Before image failure with packed row
  • [15157] [CDCSDK] Ignore intents with kRowLock in GetIntentsBatch

Known issues

N/A