What's new in the v2.17 release series

Release announcements

Release notes

YugabyteDB Anywhere release notes have moved

Starting with v2.16, the release notes for YugabyteDB Anywhere have moved to their own page.

What follows are the release notes for the YugabyteDB v2.17 release series. Content will be added as new notable features and changes are available in the patch releases of the YugabyteDB v2.17 release series.

For an RSS feed of all release series to track the latest product updates, point your feed reader to the RSS feed for releases.

v2.17.3.0 - May 04, 2023

Build: 2.17.3.0-b152

Downloads

Docker

docker pull yugabytedb/yugabyte:2.17.3.0-b152

New features

  • [7836] [YSQL] Batching IN queries on Hash Keys
  • [12417] [YSQL] Make PITR code aware of per-database catalog version mode, use prefetched catalog version of MyDatabaseId
  • [13535] [xCluster] Add ability to pause and resume replication from the source cluster
  • [13568] [YSQL] Import 'Add pg_backend_memory_contexts system view'
  • [13578] [DocDB] Push commit/abort signals from transaction participant to wait queue
  • [13585] [16286] [DocDB] Support transaction promotion for geo-partitioned workloads in use of WaitQueue and DeadlockDetector
  • [13944] [CDCSDK] DDL support for colocation table
  • [13981] [CDCSDK] Added support for colocated snapshot
  • [14063] [DocDB] Support packed row in sst_dump
  • [15014] [14333] [YSQL] Introduce per-table mutation counters on each node
  • [15051] [DocDB] Enable packed row for YCQL in debug builds
  • [15085] [YSQL] Add allocated_mem_bytes and rss_mem_bytes to pg_stat_activity
  • [15670] [YSQL] Create Auto Analyze stateful service for YSQL
  • [15735] [DocDB] Add Raft Config info to consensus information in YB-Tserver UI
  • [15987] Use tablespace leader preference as a cost component in query planner
  • [16024] [xCluster] Add yb_admin command to dump XClusterConfig content
  • [16052] [YSQL] Adds bookkeeping ops after table truncation.
  • [16092] [YSQL] Import HyperLogLog extension (postgresql-hll)
  • [16124] [DocDB] Add mem_tracker for RunningTransaction objects in TransactionParticipant
  • [16169] [yugabyted] adding support for yb-admin command passthrough.
  • [16230] [DocDB] Added Persistence for the Last Full Compaction Request Time
  • [16253] [YSQL] Support expression pushdown for ybgin index scans
  • [16290] [DocDB] add gflag ysql_enable_pack_full_row_update (default false)
  • [16303] [DocDB] Initialize current_scan_target_ with the correct prefix
  • [16424] [CDCSDK] Add table_id to GetCheckpointRequestPB
  • [DEVOPS-2617] Add required checkbox to GitHub issues templates.

Improvements

  • [11032] [yugabyted] Stay connected to ysqlsh/ycqlsh shell on pressing Ctrl+C while running yugabyted connect command
  • [11910] [DocDB] Ensure that deadline passed in to PauseWritePermits is passed down accordingly.
  • [12417] [YSQL] Enhance GetTserverCatalogVersionInfo
  • [13163] [CDCSDK] Making CDC checkpoint logs on tablet peer periodic
  • [13307] [DST] Replay all types of change metadata operation during local tablet bootstrap
  • [13580] [DocDB] Improve fairness in wait queues
  • [13748] [YSQL] Multiple request boundaries
  • [14105] [xCluster] Use deterministic mapping for txn id -> status tablet
  • [14209] [YSQL] Create system view for yb_terminated_queries
  • [14233] Pass placement info in HandleAddIfWrongPlacement
  • [14815] [YSQL] Thread leak in Postgres process, created by ybpggatePgApiImplInterrupterStart()
  • [14861] [15966] [DocDB] Packed + B/R + Colocation should restore all the schema packings of snapshot
  • [14887] [YSQL] Colocation Migration Path (Support Restoring from Legacy Colocated DB Backup to Colocation DB)
  • [14935] [DocDB] Ensure tserver handling of WAIT_BLOCK requests is forward-compatible
  • [15183] [DocDB] move list of table ids from colocated tablet's sys catalog entry to a field on each child table's sys catalog entry pointing to its parent
  • [15211] [DocDB] Improve tablet_split command output from yb-admin utility
  • [15245] [YSQL] Preserve table grants, policies, dependent views, statistics objects after ALTER TABLE ADD/DROP pkey
  • [15444] [YSQL] Expose lock information to postgres
  • [15445] [DocDB] Enable support for Valid() and key() iterator apis with ScanForward
  • [15561] [CDCSDK] Persist snapshot key during snapshot GetChanges calls
  • [15642] [YSQL] Cache sequence values on the YB-TServer
  • [15674] [YSQL] [DocDB] Support per-statement tracing through docdb
  • [15760] Change module name from YugaByte to Yugabyte
  • [15794] [DocDB] Refactor AreLeadersOnPreferredOnly to Account for Geo Partitioned Tables
  • [15819] StatefulService framework to run services on tserver
  • [15830] [DocDB] Split NonRespondingMaster into two tests
  • [15871] [YSQL] Adjust ScanChoices to not unnecessarily read unfiltered suffix columns
  • [15883] [DocDB] Check permission status of YCQL indices in CatalogManagerIsDeleteTableDone
  • [15910] Retry other TS in org.yb.cql.TestIndex#testPreparedStatement
  • [15937] [DocDB] Don't initiate packing with tombstoned column
  • [15974] [CDCSDK] Separate tablet split and before image tests
  • [15983] [CDCSDK] Add few ctests for CDCSDK
  • [15985] [CDCSDK] Remove redundant function IsCdcSdkEnabled in CatalogManager
  • [15990] [DocDB] Update /pprof/heap to work with new tcmalloc.
  • [16006] [DocDB] execute callbacks for local RPC calls the same way as for remote calls
  • [16029] [YSQL] Change yb-admin list_tables table type output of colocated parent tables from catalog to parent_table
  • [16034] [15933] [YSQL] Avoid picking hybrid timestamps in YSQL backends
  • [16092] [YSQL] Integrate HyperLogLog extension tests with Yugabyte
  • [16108] [DocDB] Start transaction promotion immediately even if not ready yet
  • [16115] [YSQL] Colocated Partitioned Table should maintain its colocation id for backup && restore
  • [16120] [CDCSDK] Add test for schema evolution with multiple streams
  • [16126] docdb Expose aborted transactions to prometheus
  • [16128] [xCluster] Adding DR test for xCluster
  • [16134] [DocDB] Refactor MiniTabletServerStart() and MiniTabletServerWaitStarted()
  • [16135] [YCQL] Use Metadata Cache in IsYBTableAltered
  • [16138] [DocDB] Tablet splitting should be blocked on system_postgres.sequences_data
  • [16140] [DocDB] Bump RBS session default timeout
  • [16147] [CDCSDK] Checkpoint set to 0.0 from raft superblock in upgrade scenarios
  • [16147] [CDCSDK] Correctly set cdc_sdk_min_checkpoint_op_id to -1.-1 in upgrade scenarios
  • [16160] [yugabyted] Stopping the processes properly in MacOS.
  • [16163] [DocDB] Change IsDeleteTableInProgress treatment of alive Index
  • [16174] [CDCSDK] Add explicit_cdc_sdk_checkpoint to GetChangesRequestPB
  • [16179] [xCluster] Abort active txn during Bootstrap
  • [16180] [DocDB] Cleanup ent/server
  • [16182] [yuagbyted] openssl_proxy.sh script not working in Ubuntu.
  • [16189] [YSQL] Possible inconsistent catalog version mechanisms used during YSQL upgrade
  • [16199] [DocDB] Bring CatalogManagerCreateTable under the linter length limit.
  • [16208] [yugabyted] Printing appropriate message while configuring a cluster.
  • [16220] [DocDB] Move cdc and xcluster out of ent
  • [16238] [xCluster] Dont compute batch size in BatchedWriteImplementationProcessRecord if no limit is set
  • [16245] [yugabyted] Fixing yugabyted configure data_placement for nodes started with DNS name as --advertise_address
  • [16248] [DocDB] Avoid decoding all key columns for PGSQL read query
  • [16251] [DocDB] Remove enterprise tserver
  • [16252] [xCluster] Break up AlterUniverseReplication function
  • [16254] [DocDB] Pack control flags for YCQL columns of fixed size
  • [16258] [YSQL] Extract sidecar only in case operation has it
  • [16265] [xCluster] Rename TwoDC tests to XCluster
  • [16265] Rename cdc and twodc to xcluster
  • [16266] [DocDB] Move ent yb-admin into src
  • [16284] [DocDB] Correctly handle TTL for liveness column for packed row
  • [16306] [xCluster] Disable adding of new transaction tablets for xCluster enabled clusters
  • [16330] [DocDB] Move master services and integration-tests out of ent folder
  • [16331] [DocDB] Move CatalogManager and Master from ent to src
  • [16332] [DocDB] Move test certs out of ent folder (#16398)
  • [16345] docdb Disable WAL reuse at bootstrap
  • [16374] [DocDB] Un-deprecate enable_pg_savepoint gflag
  • [16400] [5042] [DocDB] Remove ent folder
  • [16402] yugabyted: Set cluster config as sson as the 3rd node joins
  • [16448] [DocDB] Set yb process name prefix for MiniCluster tests
  • [16448] [DocDB] Update thirdparty to pull in glog 0.4.0-yb-5
  • [16453] [CDCSDK] Increase timeout for FlushTables in TestRecordCountsAfterMultipleTabletSplits
  • [16460] [YSQL] Improve error messages for transaction conflicts
  • [16461] [YSQL] Allow hash batching to apply to an unbounded number of permutations
  • [16474] [DocDB] Change PgClientService session_expiration_queue_ to min heap
  • [16499] [DocDB] Merge sync points code into yb/util
  • [16541] [yugabyted] Show EAR in status if enabled even when --secure flag is false.
  • [16545] Build build/package on mac11
  • [16552] [YSQL] Prevent prefix_length_ from taking non-key columns into account
  • [16617] [DB-6011] [YCQLSH] Updating yugabyte-db-thirdparty release version
  • [16746] xCluster: Compute and propagate apply_safe_time from producer
  • [CLOUD-11878] Allow editing of used provider for YBM
  • [CLOUDGA-12309] Populate providerCode in regions/az even when config is null
  • [DB-5721] [YCQLSH] Updating yugabyte-db-thirdparty release version
  • Adding missing fields to return json from suggested_k8s response.
  • API modifications to allow consumption by Terraform
  • Changing Null Check for pullsecretfile
  • Easy Deployment of K8s cluster, changes to rbac rules.
  • Refresh AWS pricing information
  • Set up chrony correctly during AMI build process

Bug fixes

  • [16773] [xCluster] Fix TSAN race on StreamTabletMetadata
  • [16583] [YSQL] Fix IndexOnlyScan with no targets returning empty rows
  • [12417] [YSQL] Fix invalid assertion in per-database catalog version mode
  • [12884] [15938] [YSQL] Fix TSAN issues caused by quickdie()
  • [14239] [YSQL] Handle duplicate YSQL CREATE TABLEs on master using tables_
  • [14350] [DocDB] Fix false deadlock issue(s) when txn rollsback to savepoint
  • [14519] [YSQL] Prevent 'Restart read required' error in case of sys catalog cache refresh
  • [14895] Fix PgLibPqTest.SerializableColoring and TestPgIndex.testConcurrentInsert
  • [15183] [DocDB] fix gcc builds
  • [15193] [DocDB] Fix heap-use-after-free failure in wait queue shutdown
  • [15206] [DocDB] fix table tombstone not found when using bloom filter
  • [15740] [CDCSDK] Failed to decode Before image record with packed row enabled and multiple table alter
  • [15761] [YSQL] Renew request cache entry in case of Snapshot too old error
  • [15767] [DocDB] Fix some yb_build issues seen with --no-tcmalloc flag
  • [15990] [DocDB] Fix mac builds by guarding tcmalloc include.
  • [16048] [YSQL] Fix regression in performance of queries returning large columns
  • [16102] [DocDB] Fix index backfill mem leak
  • [16105] [YSQL] Fix source of yb_hashClauseInfos in batched nested loop join plan creation
  • [16158] [DocDB] Fix inserting incomplete packed row in YCQL
  • [16159] [DocDB] Fix destruction of idle Messenger
  • [16173] [DocDB] Cluster creation is failing on Mac
  • [16204] [YSQL] Fix expected error messages not printed bug
  • [16246] [DocDB] removed duplicate tablet iterator initialization
  • [16257] [YSQL] Correct SELECT DISTINCT prefix_length calculation to operate on column indexes
  • [16314] [DocDB] Fix system catalog version for packed row
  • [16315] [DocDB] Fix server crash when expression evaluation fails in conjunction with packed row
  • [16333] [DocDB] Fix insert with timestamp over expired packed row
  • [16388] [YSQL] ysql_dump should preserve colocation ids of colocated partial indexes
  • [16399] [DocDB] Fixes last_change_metadata_op_id_ not getting updated in AddTable()
  • [16405] [CDCSDK] Only get schema while processing intents if needed
  • [16412] [DocDB] fixed linker flags to detect undefined symbols during build rather than in runtime
  • [16448] [DocDB] Fix Extra prefix logging in MiniMaster Start
  • [16457] [YSQL] Fix segmentation fault after rollback of subtransaction with deferred
  • [16473] [CDCSDK] Fixing bug in tests added for colocated table snapshot
  • [16486] [YSQL] Fix asan PgCatalogPerfTest.ResponseCacheWithTooOldSnapshot
  • [16501] [14166] [16520] [DocDB] fix corruption bug in test fixture PgMiniLargeClockSkewTest
  • [16507] DST PITR + Packed - Fix sys catalog restoration logic
  • [16763] xCluster: Reduce logging noise during xcluster errors
  • [16401] [yugabyted] configure data_placement not working with constraint value with uppercases.
  • [CLOUDGA-11999] Fix nginx proxy location in charts
  • [CLOUDGA-12305] Missing getters for provider fields
  • [DB-4393] [15210] YBClient fails to connect if the tserver advertises multiple hosts/ports
  • [DB-5855] xCluster Configuration - Data Type Missing in the Type.Java List
  • Adding missing values to UI for prefill kubeconfig
  • Fix for shellcheck failures caused due to D22071
  • Fix Proxy Suffix for Listing Master/TServer UI Links
  • Fix swaggerGen
  • Remove nanoid
  • UI Fix to detect registry value from the API response

v2.17.2.0 - March 27, 2023

Build: 2.17.2.0-b216

Downloads

Docker

docker pull yugabytedb/yugabyte:2.17.2.0-b216

New features

  • [13715] [DocDB] Create a singular iterator for all batched ybctid's in Index Scans
  • [13718] [DocDB] Add support for offset based key columns decoding
  • [14567] [yugabyted] Adding support for YSQL_hba_conf_csv and ysql_pg_conf_csv to '--tserver_flags' flag of 'yugabyted start' command
  • [14709] [DocDB] Enable deadlock detection in tsan
  • [15051] [DocDB] Enable row packing and allow named constants for YSQL via auto flags
  • [15186] [YSQL] expression pushdown forward compatibility
  • [15378] [DocDB] Adding support for LibFuzzer
  • [15499] [DocDB] Enable lease revocation
  • [15542] [xCluster] Pause/resume replication of user and system replication groups simultaneously
  • [15584] [CDCSDK] Populate commit_time, record_time for each record and safepoint to each batch of GetChanges
  • [15808] [xCluster] Throttle External Transaction Apply RPCs
  • [15887] [DocDB] Introduce the ability to tag the stateful service type on the tablet
  • [CDC] Add new APIs for creating restricted user and removing users

Improvements

  • [3943] [YSQL] Support renaming constraints
  • [7376] [YSQL] track catalog version in pgstat
  • [10595] [YSQL] Add progress reporting for create index commands
  • [10651] [YSQL] System catalog upgrade
  • [10696] [YSQL] Avoid reading sys catalog from followers
  • [12417] [YSQL] Enhance GetTserverCatalogVersionInfo
  • [13123] [YSQL] Push down nextval() validation
  • [13132] [YSQL] Colocation: Handle failed CREATE TABLEGROUP
  • [13262] [YSQL] Upgrade: Replacing system view should affect other session's cache
  • [13358] [YSQL] DDL Atomicity Part 2 - YSQL reports DDL transaction status to YB-Master
  • [13748] [YSQL] Multiple request boundaries
  • [13801] [yugabyted] code changes to handle RF-5 deployments with configure command.
  • [13831] [DocDB] Disable recheck for conditions that are bound to DocDB
  • [13891] [Backfill] Do not update index permissions when table is being deleted
  • [14043] [DST] PITR - Handle txn ddl gc in conjunction with PITR
  • [14374] [xCluster] Handle Bootstrap of transaction status table
  • [14440] [yugabyted] support for proving any node ip-address for --join flag during cluster creation
  • [14452] [DocDB] Tooling to List Database Names and UUIDs
  • [14462] [xCluster] Block dropping YSQL databases that contain replicated tables
  • [14635] [xCluster] Disable cleanup of uncommitted intents on the compaction path
  • [14684] [yugabyted] Support for '~' in paths given through CLI or conf file.
  • [14853] [DocDB] Deprecate tserver_tcmalloc_max_total_thread_cache_bytes
  • [14916] [YSQL] Enhance Test Coverage for Colocation
  • [14961] [14962] [YSQL] Further reduce first-query metadata RPCs
  • [15075] [DocDB] Return dns name, if available, for master server
  • [15093] [DocDB] Removing -flto flag from .o generation in prof_gen build.
  • [15183] [DocDB] move list of table ids from colocated tablet's system catalog entry to a field on each child table's sys catalog entry pointing to its parent
  • [15268] [YSQL] Optimize building of ybctid on pggate side
  • [15359] [YSQL] Enhance \h for PROFILE commands
  • [15362] [DocDB] Reuse regular RocksDB upper bound for intents RocksDB
  • [15444] [YSQL] Expose lock information to postgreSQL
  • [15458] [DocDB] Optionally omit colocated table ids from GetTableLocations RPCs.
  • [15531] [DocDB] Make RWOperationCounter Stop idempotent
  • [15562] [CDCSDK] In cases of not using the before image remove safe time after a successful snapshot
  • [15622] [xCluster] Change CHECK to Status in TransactionParticipant Add path
  • [15626] Move mac release builds to mac12 nodes
  • [15629] [DocDB] Update last_received_current_leader sent from replica to leader by including de-duped messages as well
  • [15643] [DocDB] Convert latency metrics from wait-on-conflict code to microseconds
  • [15692] [yugabyted] Code changes to add DNS validation when start command is provided with a DNS name
  • [15705] [CDCSDK] Update CDCSDK checkpoint non-actionable replicated messages in WAL
  • [15743] [YSQL] pg_cast must be prefetched in case partitioned tables exists
  • [15761] [YSQL] Avoid caching responses for auth process
  • [15761] [YSQL] Reuse arena in PgSysTablePrefetcher
  • [15795] [YSQL] Adjust scan bounds to exclude NULL's on constrained columns
  • [15795] [YSQL] Disable yb_bypass_cond_recheck by default
  • [15824] [CDCSDK] Removes unused header_schema and header_schema_version fields from ReadOpsResult
  • [15830] [Backups] Added retry-loop for live TS searching
  • [15840] [YSQL] Preload pg_proc catalog in the case of partitioned tables
  • [15841] [xCluster] GC Transactions older than 24hrs on the Consumer Coordinator
  • [15869] [DocDB] Add read replica blacklist tests.
  • [15881] [YSQL] unpushable SET clause expressions caused unnecessary index updates
  • [15894] [YSQL] Turn on Colocation GA Behavior by default
  • [15898] [yugabyted] Rearrange the output of 'yugabyted start' command
  • [15919] [YSQL] Enable initial system catalog generation for TSAN builds
  • [15942] build: handle non-canonical thirdparty dir
  • [15947] [DocDB] Pass index_map as a shared pointer to WriteQuery::QLWriteOperation
  • [15977] [YSQL] Import PostgreSQL commits for log_statement_sample_rate and log_min_duration_sample
  • [16015] [DocDB] Make ysql_enable_packed_row a gflag
  • [16018] [xCluster] Add null check for Consensus in cdc_producer
  • [16027] [DocDB] Add optional logging on transaction error
  • [16028] [DocDB] Move read_time_wait metric to be table-level
  • [16045] [YSQL] Import PostgreSQL commits for log_transaction_sample_rate
  • [16046] [YSQL] YbPreloadCatalogCache simplification
  • [16047] [CDCSDK] Mark stream as active on ns with no table with PK
  • [16056] [DocDB] Add master GetStatefulServiceLocation rpc to resolve the location of StatefulServices
  • [16057] [DocDB] Make hosted_services an unordered_set
  • [16120] [CDCSDK] Add test for schema evolution with multiple streams
  • [16128] [xCluster] Adding DR test for xCluster
  • [16140] [DocDB] Bump RBS session default timeout
  • [16145] [DocDB] Move backup out of ent folder
  • [16147] [CDCSDK] Checkpoint set to 0.0 from raft superblock in upgrade scenarios
  • [16179] [xCluster] Abort active txn during Bootstrap
  • [16199] [DocDB] Bring CatalogManager::CreateTable under the linter length limit.
  • [16238] [xCluster] Dont compute batch size in BatchedWriteImplementation::ProcessRecord if no limit is set
  • [DB-4176] [YCQLSH] Updating yugabyte-db-thirdparty release version
  • [DEVOPS-2244] Spark: Add fail tag for tsan deadlock detection
  • [DocDB] Renaming AbortedSubTransactionSet to SubtxnSet
  • Added us-gov-east-1 region in aws metadata
  • Adding debug hooks to add to container startup
  • Changing Null Check for pullsecretfile
  • Import Odyssey (PostgreSQL connection pooler)

Bug fixes

  • [3681] [DocDB] Remove dfatal log when the master->tserver AddTableToTablet RPC is retried by the master.
  • [10326] [DocDB] Refactor logic to find suitable snapshot id.
  • [12421] [DocDB] Fix checkfail caused by racing index deletion and query on a colocated db
  • [12631] [DocDB] [YSQL] Update PGTableDesc table cache when partition list version is outdated
  • [12750] [xCluster] Log TryAgain errors as warnings in TwoDCOutputClient
  • [12884] [15938] [YSQL] Fix TSAN issues caused by quickdie()
  • [13379] [DocDB] Fix BlockBasedTable memtracker being unregistered in Tablet destructor
  • [13467] [YSQL] Fix ANALYZE error after ALTER TABLE DROP COLUMN
  • [13485] Master Issues: Added div to Encryption Status field to prevent alignment breaks
  • [13852] [DocDB] Fix flaky test: org.yb.cql.TestMasterVTableMetrics.testMasterMetrics
  • [13868] [YSQL] Import Fix incorrect uses of Datum conversion macros
  • [13888] [YSQL] Fix expected test output in regression test org.yb.pgsql.TestPgRegressTablegroup.testPgRegressTablegroup
  • [13888] [YSQL] flaky test org.yb.pgsql.TestPgRegressTablegroup.testPgRegressTablegroup
  • [13897] [DocDB] AutoFlag Upgrade Test fix
  • [14138] [DocDB] WAL files are regenerated if the tserver gets into a crashloop
  • [14239] [YSQL] Handle duplicate YSQL CREATE TABLEs on master using tables_
  • [14268] [xCluster] Fix GetChangesOnSplitParentTablet
  • [14326] [DocDB] Fixed Missing Argument Expressions for yb-admin
  • [14395] [YSQL] PG Caches are not cleared properly if Rename Table operation fails.
  • [14527] [CDCSDK] Flaky ctest ActiveAndInActiveStreamOnSameTablet Fix
  • [14569] [DocDB] fix conflict detection in colocated table for row lock
  • [14677] [DocDB] Fix lock inversion in master/snapshot code path
  • [14739] [yugabyted] 'yugabyted configure' should work only when a node is running
  • [14814] [YSQL] Exception handling in pushdown framework
  • [14815] [YSQL] Thread leak in Postgres process, created by yb::pggate::PgApiImpl::Interrupter::Start()
  • [14998] [13331] [DocDB] Fix data race of mem_table_flush_filter_factory_ in Bootstrap * [TSan Unit Test]
  • [15008] [DocDB] fix flaky test RaftConsensusITest.TestAddRemoveNonVoter
  • [15183] [DocDB] fix gcc builds
  • [15220] [DocDB] Fix apply-operation timeout during schema changes
  • [15364] [YSQL] Add error message when using SPLIT clause with colocated indexes
  • [15367] [YCQL] Support deletion from List/Map in DELETE stmt
  • [15429] [YSQL] Fix regex in Test YSQL Upgrade migrationFilenameComment
  • [15443] [DocDB] Fix setting cotable id for non primary YSQL catalog tables
  • [15516] [CDCSDK] Data loss with CDC snapshot plus streaming
  • [15528] [DocDB] Fix usage of Connection::outbound_data_being_processed_ during Shutdown
  • [15530] [DocDB] Fix RPC shutdown in Messenger and Heartbeater
  • [15558] [DocDB] Make IsTabletSplittingComplete wait for the tablet split manager to not be running.
  • [15610] [YSQL] fix flaky test: TestPgParallelSelect.testParallelWherePushdowns
  • [15687] [xCluster] Fix issue with Compaction and TSAN warning
  • [15698] [DocDB] Handle null placement info due to faulty restores
  • [15723] [yugabyted] code changes to fix enable encrypt-at-rest command.
  • [15735] [DocDB] Add Raft Config info to consensus information in YB-Tserver UI
  • [15735] [DocDB] Add tserver UUID to RaftConfig UI of YB-Master in per-table view
  • [15745] [YSQL] Colocated Partitioned Table Backup && Restore Fails
  • [15752] [CDCSDK] Continue if before image is missing in PopulateBeforeImage in packed row
  • [15759] [CDCSDK] Add a parameter to SetCheckpointRequest to accept cdc_sdk_safe_time
  • [15763] [DocDB] Fix reading packed row with column updated to NULL
  • [15774] [DocDB] Disabled TestRedisServiceExternal.TestSlowSubscribersSoftLimit
  • [15786] [DocDB] Make DocRowwiseIterator hold shared_ptr of DocReadContext for its lifetime
  • [15807] [DocDB] Ensure IntraTxnWriteId is properly decoded even in weak lock intents
  • [15820] [YSQL] fix ybgin index scan after DROP COLUMN
  • [15827] [YSQL] Reads in SERIALIZABLE isolation were not following Wait-on-Conflict concurrency control even when enable_wait_queues=true
  • [15829] [DocDB] fix leader ht lease exp under leader only mode
  • [15842] [DocDB] Count time from transaction init for tracing thresholds
  • [15849] [DocDB] Don't hold mutex when starting TransactionStatusResolver
  • [15863] [Backfill] Fixed race in Tablet::FlushWriteIndexBatch
  • [15873] [YSQL] Fix Test ysql Upgrade failures
  • [15874] [YCQL] Fix wrong metadata version with pagination on SELECT using Index
  • [15878] [YSQL] Restore root->yb_availBatchedRelids after its use.
  • [15883] [DocDB] Check permission status of YCQL indices in CatalogManager::IsDeleteTableDone
  • [15891] [DocDB] Fix race condition in TestPgIsolationRegress#isolationRegressWithWaitQueues
  • [15892] [YSQL] Fix bug in how empty bitmap sets are detected in batched nested loop planning
  • [15911] [15912] [DocDB] Fix transaction promotion/conflict resolution abort handling
  • [15928] [15923] [15925] [YSQL] Convert some PG variables to std::atomic variables to prevent TSAN failures.
  • [15939] [YSQL] Import 'Switch flags tracking pending interrupts to sig_atomic_t' to fix TSAN failures
  • [15952] [YSQL] Reduce verbosity of a Postgres log line in read committed isolation level codepath
  • [15958] [DocDB] fix memory leak in KeyEntryValue::DecodeKey/PrimitiveValue::DecodeFromValue
  • [15959] [YSQL] Fix migrations V17, V22, V31 to properly update pg_proc
  • [15962] [YSQL] Java tests in TSAN build fail due to process_tree_supervisor.py failing to kill all processes
  • [15969] [YSQL] Control inclusiveness info being sent over in QL_OP_BETWEEN with an AutoFlag
  • [15996] [DocDB] Disabled TestRedisService.TestTtlSet and TestRedisService.TestTtlSortedSet
  • [16004] [YSQL] Colocation GA alter table add primary key, drop constraint pk not working for colocated tables
  • [16011] [YSQL] Fix memory leak in pg_doc_op
  • [16012] [YSQL] Add to the correct side of yb_availBatchedRelids and allow BNL to work on Relabeled Vars
  • [16020] [YSQL] Fix yb_get_range_split_clause primary key constraint wrong assumption
  • [16034] [15933] [YSQL] Avoid picking hybrid timestamps in YSQL backends
  • [16044] [YSQL] Correct warning message on using tablegroup and old colocated syntax
  • [16048] [YSQL] Fix regression in performance of queries returning large columns
  • [16061] [DocDB] Fixes memory leak issues in RemoteBootstrapAnchorClient
  • [16062] [YSQL] Avoid returning raw pointer from YBClient::NewNamespaceAlterer
  • [16077] [YSQL] fixed kGroupEnd bug for range scans containing IN clause and strict inequality
  • [16082] [YSQL] ysql_dump cannot correctly dump primary key with INCLUDE clause for table schema
  • [16088] [DocDB] Use correct errno in log for failed mmap.
  • [16109] [DocDB] Fix deadlock with YqlPartitionsVTable
  • [16135] [YCQL] Use Metadata Cache in IsYBTableAltered
  • [16151] [DocDB] Fix incorrect iteration over modified set in CleanupAbortsTask::Run
  • [16160] [yugabyted] Stopping the processes properly in MacOS.
  • [16173] [DocDB] Cluster creation is failing on Mac
  • [16180] [DocDB] Cleanup ent/server
  • [16204] [YSQL] Fix expected error messages not printed bug
  • [16245] [yugabyted] Fixing yugabyted configure data_placement for nodes started with DNS name as --advertise_address
  • [16345] [DocDB] Disable WAL reuse at bootstrap
  • [CLOUDGA-11585] CDC node should pass in the right AMI value
  • [DB-4390] Fix CVE vulnerabilities
  • [DB-4393] [15210] YBClient fails to connect if the tserver advertises multiple hosts/ports
  • [xCluster] Per-table replication status is not set properly after sync
  • Fix catchKeysWithNoMetadata UT failure on master
  • Fix spacing in pg_yb_utils.*
  • Fix swaggerGen
  • Fixing a buggy format statement

Known issues

N/A

v2.17.1.0 - February 7, 2023

Build: 2.17.1.0-b439

Downloads

Docker

docker pull yugabytedb/yugabyte:2.17.1.0-b439

New features

  • [12744] [CDCSDK] Add composite type support
  • [13358] [YSQL] YSQL DDL Atomicity, part 1
  • [13807] [xCluster] Add APIs for changing role
  • [13910] [yugabyted] Adding the functionality for enabling/disabling encryption-at-rest through yugabyted CLI
  • [13970] [CDCSDK] Alter table support with CDCSDK
  • [14068] [YSQL] Allow Batched Nested Loop joins for conjunction clauses
  • [14069] [YSQL] Allow Batched Nested Loop joins for clauses that have expressions on outer variables
  • [14336] [DocDB] YbAdmin command to promote AutoFlags after upgrade
  • [14559] [YSQL] [YCQL] Implement select distinct pushdown to DocDB
  • [14562] [YSQL] Support backup for Colocation GA
  • [14939] [YSQL] Allow admin to limit the number of successive failed login attempts by a role
  • [CDCSDK] Before image support for CDC with only record types Change and All
  • [DB-2705] [YSQL] Introduce GFlag to control local file access
  • [DocDB] Enable deprecation of GFlags

Improvements

  • [7614] [DocDB] Add an option to run a major compaction at a fixed interval
  • [9614] [DocDB] Downgrading skip file for compaction messages in compaction_picker to DEBUG level
  • [10584] [DocDB] Update precompiled headers, remove unnecessary includes
  • [10821] [YSQL] Cache sys catalog read request on local t-server side
  • [11849] [YSQL] Add distributed storage access statistics to EXPLAIN ANALYZE
  • [12417] [YSQL] support concurrent DDL across databases
  • [12735] [YSQL] Add cluster option to support colocation on-by-default on database
  • [12791] [YSQL] Add support for create table like clause
  • [12953] [YSQL] Populate query termination entry in pg_stat with OOM and seg fault errors
  • [13207] [yugabyted] Code changes for enabling SSL communication in the go apiserver and support UI launch with secure cluster.
  • [13211] [YSQL] Integrate READ COMMITTED isolation with wait queues
  • [13216] [yugabyted] Update the help section of yugabyted start command
  • [13540] [YSQL] Expose intents db entries on the tserver web UI in debug builds
  • [13541] [YSQL] Make yb_enable_expression_pushdown is on by default
  • [13718] [DocDB] Improve DocDB Scan Performance
  • [13750] Audit GFlag metadata to review information about which DB GFlags can be updated without restarts
  • [13764] [13766] [YSQL] Expose Colocation GA Implementation
  • [13767] [YSQL] Mark existing tablegroup syntax as deprecated
  • [13815] [YSQL] Enhance passwordcheck with more checks
  • [14046] [DocDB] Ability to get notified on GFlag changes
  • [14066] [YSQL] Add funcs to show the current memory usage of PostgreSQL backends
  • [14106] [CDCSDK] Add Java level APIs to fetch tablets from the cdc_state table
  • [14128] [DocDB] Track ql_read_latency for SQL too
  • [14136] [YSQL] Enable yb_db_admin to ALTER/DROP/CREATE triggers like a superuser
  • [14140] [YSQL] Import Make contrib modules' installation scripts more secure
  • [14148] [YSQL] Import Fix permission checks on constraint violation errors on partitions.
  • [14265] [DocDB] Speedup split child tablet local bootstrap by copying in-memory retryable requests structure from parent tablet
  • [14309] [YSQL] Store TServerSharedObject by value in PgApiImpl
  • [14346] [YSQL] Establish a link between postgres logs and tserver logs that are emitted in context of the same transaction
  • [14378] [YSQL] Output current ysql_max_connections as a metric
  • [14411] [YSQL] Improve libpq_utils fetchers
  • [14418] Combine yb-master and yb-tserver into one LTO executable
  • [14446] [YSQL] Enable yb_db_admin to SELECT/INSERT/UPDATE/DELETE rows in tables like a superuser
  • [14451] [DocDB] Add RUNTIME to pg and auto flags macro
  • [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
  • [14533] [DocDB] Colocated table creation optimization
  • [14546] Use weak pointer to Tablet in Operation
  • [14561] [DocDB] Consolidate the use of RegisterFlagValidator and DEFINE_validator
  • [14633] [13474] [DocDB] Add build time protection to prevent AutoFlags that have shipped from being removed
  • [14649] [yugabyted-ui] Re-arrange yugabyted-ui tabs
  • [14816] [DocDB] Unify the usage of flags headers
  • [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
  • [14886] [DocDB] Adds compaction types to compaction task metrics
  • [14905] [YSQL] Simplify TabletServiceImpl::Write
  • [14928] Hide PG and Auto flag tags from general use
  • [15026] Minor refactoring of xcluster consistency computation
  • [15031] [CDCSDK] Restrict compaction during the CDC snapshot
  • [15059] [YSQL] Simplify PgClientSession::Perform
  • [15067] [CDCSDK] Java level changes in the API to create CDC stream for before image
  • [15203] [YSQL] Optimize QLType
  • [15215] [yugabyted] Updating the help text for --ui flag.
  • [15237] [yugabyted-ui] Use pgxpool instead of pgx for yugabyted-ui api server
  • [15253] Fixing CVE vulnerabilities by upadting jars
  • [15261] [yugabyted-ui] Implement the nodes page redesign for yugabyted-ui
  • [15266] [15024] Extend log-dump to print KV pairs in human readable format
  • [15368] [YCQL] Add mechanism to reset password as a non-authenticated user
  • [15409] [yugabyted-ui] Make db connections in yugabyted-ui more robust
  • [15481] [DocDB] Remove some unused parts of RocksDB

Bug fixes

  • [1562] [YSQL] cache lookup failed for attribute -8 (ybctid)
  • [5862] [YSQL] Call YBCInit for the webserver
  • [10615] [YSQL] SingleShardTransaction should mean single row dml statement running in autocommit mode
  • [10888] [YSQL] Incorrect check in DropTableSpace
  • [10921] [CDCSDK] Populate cdc stream cache with newly added table details
  • [10921] [CDCSDK] Support for newly added table to active stream's namespace
  • [10935] [CDCSDK] Add Active time when adding child tablets to cdc_state table
  • [10935] [CDCSDK] Do not update checkpoint if tablet split was not verified
  • [10935] [CDCSDK] Fixing bug which added tables without primary keys to CDCSDK stream metadata
  • [11632] [YSQL] Support Tablegroup Backup && Restore
  • [11645] [YSQL] Wait for pending Perform RPCs to complete before aborting YB ddl transaction
  • [11975] [DocDB] one-line fix for logging write batches
  • [12068] [14047] [xCluster] Fix shutdown path of CDCConsumer
  • [12307] [YSQL] [Upgrade] Inserts to pg_depend should update YB pinned object cache
  • [12442] [YSQL] Add colocation_id to pg_dump for materialized views
  • [12899] [14862] [DocDB] Handle system keys in ScanChoices/Iterator
  • [13069] [DocDB] Drop Database removes metadata from tablet, persists and replicates this change to superblock
  • [13102] [DocDB] Fix deadlock in DoSplitTablet.
  • [13363] [YSQL] Enable Postgres national language support
  • [13367] [YSQL] Avoid using plain text LDAP password via env variable
  • [13465] [YSQL] Batch upserts in CatalogManager::CopyPgsqlSysTables when creating namespace
  • [13500] [YSQL] [Upgrade] Direct DMLs on system tables should update system cache
  • [13575] [DocDB] Fixed negative metric value from thread_running category
  • [13699] [15199] [15222] [15242] [DocDB] Fix misleading logs.
  • [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
  • [13925] Add missing scoped operation for the CalcChecksum RPC
  • [13961] [DocDB] Add a URL param to reset histograms
  • [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
  • [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
  • [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
  • [14240] [YSQL] Adjust cost model for Batched Nested Loop joins
  • [14280] [DocDB] Avoid decoding doc hybrid time during compaction when possible
  • [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
  • [14302] [DocDB] Fix a potential shutdown issue in AutomaticallySplitSingleTablet()
  • [14332] [YSQL] Fix skew in ANALYZE statistics
  • [14335] [YSQL] Release YbScanDesc on scan end
  • [14343] [xCluster] Introduce Backoff Mechanism to Txn Coordinator External Retry Logic
  • [14357] [YSQL] Avoid memory leak in yb_hash_code by freeing status
  • [14365] [YSQL] Handle backups of range-partitioned indexes with null values in partition bounds
  • [14374] [xCluster] Handle Bootstrap of transaction status table
  • [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()
  • [14417] [DocDB] Tserver Registration hazard - UUID can be blank
  • [14421] Remove ROCKSDB_LITE
  • [14424] [YCQL] Persist where predicate in IndexInfo for PartialIndexes
  • [14426] [yugabyted] [QA] Added validation for hostnames provided through CLI.
  • [14442] [xCluster] Fix Transaction Consistency Issues
  • [14471] [YSQL] Fix crash upon concurrent DMLs on two tables with foreign key relationship
  • [14479] [CDCSDK] Add bool parameter to error out of UpdateCdcReplicatedIndex RPC fails on any TServer
  • [14489] [DocDB] fix term mismatch caused by stale consensus meta data passed to InitTabletPeer
  • [14529] [YSQL] Fixing ALTER ATTACH PARTITION index command failure
  • [14534] [YSQL] Removed unused variable tablet_server_proxy_
  • [14535] [YSQL] Remove unused field backend_max_mem_bytes
  • [14552] [DST] [PITR] Continue after checking table not found in colocated list
  • [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
  • [14556] [DocDB] Prevent momentary data masking during IntentAwareIterator scans in index backfill
  • [14574] [YSQL] Complete support for PARAM_EXEC pushdown
  • [14582] [DocDB] Fix livelock issue in pessimistic locking
  • [14584] Deprecate flags found in D20334 using the new DEPRECATE_FLAG api
  • [14584] Migrate runtime flags from TAG_FLAG to DEFINE_RUNTIME
  • [14595] [CDCSDK] tserver crash during snapshot mode
  • [14596] [DocDB] JSON escape the GFlags in CallHome
  • [14607] [15026] [xCluster] Use tablet level xCluster consistency during read of catalog only data
  • [14607] [xCluster] Use tablet level xCluster consistency during read of catalog only data
  • [14614] [YSQL] Cleanup after terminated connections
  • [14624] [YSQL] Instantiate remote params upon rescan
  • [14632] [DocDB] disallow packed row for colocated tables
  • [14632] [DocDB] Disallow packed row when compacting co-located tables
  • [14632] [DocDB] fix description of ysql_enable_packed_row_for_colocated_table
  • [14635] [xCluster] Disable cleanup of uncommitted intents on the compaction path
  • [14637] [ycql] Upgrade Spark and Spark connector versions
  • [14639] [DocDB] Improve transaction dump
  • [14642] [DocDB] Dump applied and removed intents
  • [14643] [DocDB] Fix strongly typed bool constants
  • [14651] [YSQL] Scale max rss usage output on OSX
  • [14652] Fix xcluster_safe_time_service Init
  • [14678] [xCluster] Consumer side safe time metrics
  • [14693] Fix raw pointer access to Tablet in WriteQuery
  • [14695] [YSQL] YBCRestartTransaction has no parameter
  • [14711] [xCluster] Fix deadlock in CDCConsumer shutdown
  • [14713] [yugabyted] [QA] 'yugabyted status' command shows Stopped even when the node is destroyed.
  • [14714] [DocDB] Un-hide enable_wait_queue_based_pessimistic_locking flag
  • [14716] [DocDB] LDB tool is crashing while trying to dump manifest file
  • [14717] [YSQL] Add yb_pg_select_distinct.sql based on select_distinct.sql
  • [14727] [YSQL] Deprecate unused flags
  • [14730] [DocDB] Deprecate flags max_queued_split_candidates and load_balancer_skip_leader_as_remove_victim.
  • [14746] [CDCSDK] Fixing the erroneous behaviour of "cdcsdk_last_sent_physicaltime" metric
  • [14763] [DocDB] Don't hold catalog manager lock while writing to sys catalog.
  • [14764] Deprecate GFlag svc_queue_length_default
  • [14767] [DocDB] fixed LW protobuf implementation to skip unknown fields
  • [14770] [YSQL] Use std::optional and std::unordered_map instead of boost's version
  • [14779] [YSQL] fix heap-use-after-free from Tserver::Write
  • [14788] [CDCSDK] Fixes DDL messages for colocated tables
  • [14789] [CDCSDK] Do not send checkpoint to tablet peers for tablets in uninitialized state
  • [14791] Add comments for vmodule and REGISTER_CALLBACK
  • [14817] [YSQL] [YCQL] Remove legacy ScanChoices
  • [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
  • [14853] [YSQL] Deprecate flag: use_initial_sys_catalog_snapshot (master)
  • [14853] [YSQL] Deprecate flag: ysql_wait_until_index_permissions_timeout_ms (TServer)
  • [14855] [yugabyted] java install check is no longer needed.
  • [14873] [DocDB] follower should not check schema when preparing because previous change schema ops might not be applied yet
  • [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
  • [14910] [DocDB] use multi index container for table map
  • [14913] [DocDB] start hinted leader election only on running replicas
  • [14924] [DocDB] Don't wake the bg task in CreateTable when joining a colocation group.
  • [14931] [CDCSDK] YBClient unable to find a TabletClient for child tablets which are split further
  • [14950] [CDCSDK] Add tablet_id param to GetTabletListToPollForCDC RPC
  • [14954] [YSQL] Wait event for statements in exponential backoff
  • [14974] [YSQL] Fix name conflict in aset realloc
  • [14987] [14988] [xCluster] Check for system replication in IsSetupUniverseReplicationDone
  • [15001] Adjust XCluster DDL Verification to Serial Equivalence After PackedColumns
  • [15004] [CDCSDK] Dataloss when streaming transaction intents for large tables
  • [15006] [DocDB] set same error to operations with same request id when retrying a batcher
  • [15016] [DocDB] YSQL select max() returns inconsistent result after tablet splitting
  • [15016] Fixing heap use after free (caught by asan)
  • [15016] Recalculation of a partition key only when it is really necessary
  • [15025] [YCQL] Fixing Index updating by DELETE for a deleted row
  • [15027] [DocDB] Fix to compute the middle of middle key for tablet splitting
  • [15032] [CDCSDK] Alter table support with CDC snapshot
  • [15044] [YSQL] Fix initial_sys_catalog_snapshot dependencies
  • [15047] [CDCSDK] Stop hiding tablets when table deleted from namespace with active stream
  • [15051] [DocDB] Log schema packing versions
  • [15051] [DocDB] Retain schema packing for non flushed entries
  • [15051] [DocDB] Take intents into account for retaining schema packing
  • [15051] [DocDB] Use schema version during apply intents
  • [15052] [xCluster] Fix yb-admin change_xcluster_role command description
  • [15062] [CDCSDK] Differentiate between Update and Insert records in case of packed row
  • [15063] [CDCSDK] Alter table support is broken with packed row
  • [15064] [15033] [CDCSDK] Restrict compaction only for CDC snapshot mode and for before image type
  • [15075] [DocDB] Adding tserver HTTP api and ts-cli parameter to determine current list of yb-masters and the leader
  • [15087] [xCluster] Fix ranged keys + uneven tablet counts
  • [15094] Fix cardinality estimation for PG selectivity estimation when index is present
  • [15100] [CDCSDK] Populate the old/new tuples correctly in the context of single shard update
  • [15101] [YCQL] Support binding keys/indices in subscripted columns for collections
  • [15102] [CDCSDK] snapshot feature is broken with the packed row
  • [15104] [DocDB] [Colocation] Fixes primary table being renamed on a colocated table rename
  • [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
  • [15140] [15141] [xCluster] Fix FATAL issues and data inconsistencies from transactional workload
  • [15154] [CDCSDK] Before image failure with packed row
  • [15156] [YSQL] Have joinrel param batching info acknowledge that batched clauses should not be imposed on child rels that can't handle batching
  • [15157] [CDCSDK] Ignore intents with kRowLock in GetIntentsBatch
  • [15165] [DocDB] Fix sidecars related regressions
  • [15172] [YSQL] Move the ybRunContext to be a child of TopPortalContext
  • [15176] Fix build with custom Clang on Apple Silicon macOS and other build improvements
  • [15216] [DocDB] Overwrite existing mappings when adding new tables to TableIndex.
  • [15286] [YSQL] Fix premature return in PG_TRY block in relcache.c
  • [15309] [CDCSDK] Before image is missing with large transaction
  • [15329] [DocDB] Use ThreadSafeArena for lightweight protobuf
  • [15346] [DocDB] Fix the deadlock issue between CreateTable and ProcessTabletReportBatch
  • [15384] [CDCSDK] Ignore cases where safe_time not set in PopulateTabletCheckPointInfo
  • [15386] [15230] [CDCSDK] SetCDCCheckpoint API should throw an error for the table that is not part of the stream
  • [15393] [YSQL] Prevent ExecProcNode from being called more than once on outer plan after it has been exhausted
  • [15406] [DocDB] Simplify bfql and bfpg for easier migration to lightweight value
  • [15418] [YSQL] Fix rolprffailedloginattempts counter behaviour
  • [15427] Remove the unsafe tablet access method from Operation
  • [15433] [CDCSDK] Only delete parent tablet after a successful GetChanges call on both children
  • [15435] [YSQL] Exclude some auth methods from profile handling
  • [15443] [DocDB] Fix setting cotable id for non primary ysql catalog tables
  • [15494] [DocDB] Do not log version edits by default
  • [15496] [YSQL] Process qpqual filters during BNL index scan formation to check if batching should be prohibited
  • [15515] [DocDB] Fixes infinite loop detected error
  • [15525] [DocDB] Fix CallHome Scheduling
  • [15526] [DocDB] Fix deadlock in GetLeaderMasterRpc
  • [15542] [xCluster] Pause/resume replication of user and system replication groups simultaneously
  • [15543] [xCluster] Don't clear safetime on Replication Pause
  • [15559] [CDCSDK] Prevent updating LastReplicationTime when reporting TabletSplit error
  • [15613] [DocDB] Fix race conditions in wait_queue which would cause conflicting requests to hang indefinitely
  • [15622] [xCluster] Change CHECK to Status in TransactionParticipant Add path
  • [15687] [xCluster] Fix issue with Compaction and TSAN warning
  • [15698] [DocDB] Handle null placement info due to faulty restores
  • [15763] [DocDB] Fix reading packed row with column updated to NULL
  • [15808] [xCluster] Throttle External Transaction Apply RPCs
  • [15841] [xCluster] GC Transactions older than 24hrs on the Consumer Coordinator
  • [adhoc] [DocDB] Prevent repeat resumption of waiting operation if first resumption was error
  • [DB-756] [YCQL] Syntax change - remove "yet" from "changing the number of tabl…
  • [YB-21] Removing unused APIs from yugabyted-ui
  • [YSQL] Change YB_MIN_UNUSED_OID to YB_LAST_USED_OID
  • [YSQL] Fix V24 migration OIDs

Known issues

N/A

v2.17.0.0 - December 8, 2022

Build: 2.17.0.0-b24

Downloads

Docker

docker pull yugabytedb/yugabyte:2.17.0.0-b24

New features

  • [11849] [YSQL] Add distributed storage access statistics to EXPLAIN ANALYZE
  • [12953] [YSQL] Populate query termination entry in pg_stat with OOM and seg fault errors
  • [13807] [xCluster] Add APIs for changing role
  • [DB-2705] [YSQL] Introduce GFlag to control local file access

Improvements

  • [13207] [yugabyted] code changes for enabling SSL communication in the go apiserver and support UI launch with secure cluster.
  • [13216] [yugabyted] Updating the help section of start command for --secure and --insecure flags
  • [13367] [YSQL] Avoid using plain text LDAP password via env variable
  • [13815] [YSQL] Enhance passwordcheck with more checks
  • [14265] [DocDB] speedup split child tablet local bootstrap by copying in-memory retryable requests structure from parent tablet
  • [14533] [DocDB] Colocated table creation optimization

Bug fixes

  • [10935] [CDCSDK] Add Active time when adding child tablets to cdc_state table
  • [12068] [14047] [xCluster] Fix shutdown path of CDCConsumer
  • [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] Hiding DB password from the logs
  • [14136] [YSQL] Enable yb_db_admin to ALTER/DROP/CREATE triggers like a superuser
  • [14212] [YSQL] Optimize relation's rd_replidindex preloading
  • [14289] [DocDB] Include subtransaction_id in value of weak intents
  • [14296] [DST] Packed + Backup/Restore - Merge schema packing history on restore
  • [14298] [14668] [DST] [PITR] MetaCache flips replica state from failed to not failed for hidden tablets
  • [14343] [xCluster] Introduce Backoff Mechanism to Txn Coordinator External Retry Logic
  • [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()
  • [14426] [yugabyted] Added validation for hostnames provided through CLI.
  • [14446] [YSQL] Enable yb_db_admin to SELECT/INSERT/UPDATE/DELETE rows in tables like a superuser
  • [14552] [DST] [PITR] Continue after checking table not found in colocated list
  • [14552] [DST] [PITR] Do not crash if table not found from colocated list
  • [14555] [xCluster] Use xCluster Role to determine when xCluster safe time is computed
  • [14582] [DocDB] Fix livelock issue in pessimistic locking
  • [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
  • [14713] [yugabyted] 'yugabyted status' command shows Stopped even when the node is destroyed.
  • [14714] [DocDB] Un-hide enable_wait_queue_based_pessimistic_locking flag
  • [14797] [DocDB] Prevent repeat resumption of waiting operation if first resumption was error
  • [14826] [DocDB] Rename enable_wait_queue_based_pessimistic_locking to enable_wait_queues
  • [14855] [yugabyted] Prevent Java install check for yugabyted start command.

Known issues

N/A