docs/content/stable/releases/ybdb-releases/v2024.2.md
What follows are the release notes for the YugabyteDB 2024.2 release series. Content will be added as new notable features and changes are available in the patch releases of the YugabyteDB 2024.2 release series.
For an RSS feed of all release series, point your feed reader to the RSS feed for releases.
{{< note title="CDC - gRPC Connector compatibility" >}}
YugabyteDB v2024.2 requires gRPC Connector dz.1.9.5.yb.grpc.2024.2.3 or later.
{{< /note >}}
Build: 2024.2.8.0-b85
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.8.0-b85
ysql_conn_mgr_max_phy_conn_percent and introduced new flag ysql_conn_mgr_reserve_internal_conns for reserving connections for internal operations. {{<issue 28859>}}avg_wait_time_ns stat is updated for the control connection pool. {{<issue 28277>}}ysql_dump output on script failure during DB cloning. {{<issue 29607>}}yb-ts-cli tool. {{<issue 7832>}}InterprocessSharedMemoryObject and InterprocessMappedRegion to wrap boost::interprocess calls, converting exceptions to Status returns. {{<issue 27826>}}ysql_clone_disable_connections flag to allow YSQL database connections during cloning. {{<issue 29678>}}log-dump to read encrypted WAL files using the master_addresses flag. {{<issue 17816>}}CatalogManager::mutex_ for each placement run, thus improving efficiency. {{<issue 29183>}}follower_unavailable_considered_failed_sec as a runtime flag. {{<issue 30123>}}namespace_id when necessary. {{<issue 28124>}}/snapshots endpoint to tserver UI displaying space overhead information of snapshots, including snapshot ID, time, cumulative required space, exclusive data space, and schedule ID. {{<issue 29388>}}are_nodes_safe_to_take_down to check if nodes can be taken down without losing quorum. {{<issue 28020>}}YBParsePrepareErrorResponse packet for unnamed prepared statements. {{<issue 29526>}}CatalogManager::FindXReplStreamsMarkedForDeletion when a table is dropped. {{<issue 29637>}}INSERT ... ON CONFLICT for partial indexes. {{<issue 30104>}}yb_cdc_snapshot_read_time field, simplifying snapshot management. {{<issue 26303>}}.arclint. {{<issue 30190>}}epoll_* functions and fixing syntax errors. {{<issue 29827>}}od_frontend_remote_client. {{<issue 29303>}}OBJECT_NOT_FOUND errors to refresh cache. {{<issue 29589>}}durable_wal_write is set to false. {{<issue 23453>}}min_replay_txn_first_write_ht to address transaction data loss that occurred due to incorrect filtering of transactions on bootstrap. {{<issue 29642>}}use_bootstrap_intent_ht_filter set to true. {{<issue 29664>}}od_write function to prevent double free of mm_msg_t objects and enhanced machine_msg_free to handle NULL messages. {{<issue 29398>}}cdc_enable_savepoint_rollback_filtering by default, enhancing CDC support. {{<issue 29396>}}Build: 2024.2.7.3-b1
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.7.3-b1
INSERT ... ON CONFLICT operations. {{<issue 30104>}}FastDecodeSignedVarInt(). {{<issue 24600>}}Build: 2024.2.7.2-b1
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.7.2-b1
Build: 2024.2.7.1-b1
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.7.1-b1
Build: 2024.2.7.0-b62
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.7.0-b62
wal_size metric to include the size of the current active, writable segment, ensuring accurate reflection of on-disk size. {{<issue 15274>}}CatalogManager::FindXReplStreamsMarkedForDeletion() for cleaner logs. {{<issue 29637>}}kAbort and kConflict errors for clearer troubleshooting. {{<issue 28157>}}msg object. {{<issue 29195>}}wal_size metric when reusing existing segments. {{<issue 28720>}}od_write in od_frontend_remote_client. {{<issue 29303>}}min_replay_txn_start_ht with min_replay_txn_first_write_ht for improved transaction loading during bootstrap. {{<issue 29642>}}PeerMessageQueue::ReadReplicatedMessagesForConsistentCDC implementation. {{<issue 29060>}}Build: 2024.2.6.2-b2
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.6.2-b2
Build: 2024.2.6.1-b2
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.6.1-b2
Build: 2024.2.6.0-b94
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.6.0-b94
ANALYZE command starting in version 2024.2. {{<issue 25552>}}yb_read_after_commit_visibility for writes. {{<issue 24940>}}yb_fk_references_cache_limit parameter to cap FK references cache entries at 65535. {{<issue 27739>}}pg_cache_response_trust_auth_lifetime_limit_ms. {{<issue 28261>}}yb_enable_cbo=legacy_ignore_stats_bnl_mode. {{<issue 28703>}}ysql_enable_scram_channel_binding to enable SCRAM with channel binding. {{<issue 28108>}}list_change_data_streams output. {{<issue 28646>}}GetChanges to clients for more transparency. {{<issue 28033>}}TimeZone is not lowercased in connection manager for correct pgJDBC interpretation. {{<issue 28537>}}kIdle instead of kUnused. {{<issue 28303>}}ALTER TABLE SET TABLESPACE. {{<issue 26995>}}IsRenewRequired works as expected. {{<issue 28226>}}yb_enable_cbo correctly activates when legacy YSQL configuration parameters are ON. {{<issue 28156>}}OBJECT_NOT_FOUND error during an index alteration, ensuring smoother table modifications. {{<issue 28849>}}rocksdb_block_cache_bytes_read metrics to reduce noise and overhead. {{<issue 27017>}}write_id to prevent data loss. {{<issue 28166>}}CHANGE replica identity. {{<issue 28629>}}Build: 2024.2.5.1-b1
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.5.1-b1
Build: 2024.2.5.0-b59
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.5.0-b59
Result class for simplified handling of convertible results. {{<issue 24911>}}EXPLAIN (ANALYZE, DIST, DEBUG) output. {{<issue 26086>}}pg_log_backend_memory_contexts for enhanced debugging. {{<issue 27879>}}COPY FROM commands in a transaction block use one transaction unit. {{<issue 27061>}}FormatBytesAsStr to prevent large memory allocations. {{<issue 27924>}}ScopedStatistics, reducing TServer insert time. {{<issue 25602>}}yb_client from PgClientServiceImpl. {{<issue 24145>}}disable_core_dumps_on_fatal. {{<issue 28007>}}ON COMMIT DROP. {{<issue 27339>}}COPY FROM/TO commands. {{<issue 28093>}}pgaudit stack is not empty errors and skips auditing for permission-less relations. {{<issue 28087>}}yb_db_admin roles to set PL speculative execution parameters. {{<issue 28101>}}yb_enable_cbo correctly activates when legacy YSQL configuration parameters are ON. {{<issue 28156>}}ysqlsh connections with empty passwords under load. {{<issue 28174>}}TabletPeer::GetNamespaceId to use shared_tablet_safe. {{<issue 27632>}}FLAGS_txn_slow_op_threshold_ms is set to 0 to prevent log spew. {{<issue 27996>}},{{<issue 28032>}}ALTER ROLE ... SET configurations across multiple databases. {{<issue 27945>}}Build: 2024.2.4.2-b2
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.4.2-b2
This is a YugabyteDB Anywhere-only release, with no changes to YugabyteDB.
Build: 2024.2.4.1-b4
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.4.1-b4
ysqlsh connections with empty passwords under load. {{<issue 28174>}}Build: 2024.2.4.0-b89
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.4.0-b89
use_fast_backward_scan flag. {{<issue 26991>}}yb_enable_cbo for safer query optimization without statistics. {{<issue 26868>}}ysql_yb_enable_cbo flag on tserver for query optimization. {{<issue 27495>}}ysql_dump outputs with the dump_role_checks flag. {{<issue 25887>}}pg_yb_catalog_version mode from 10 seconds to 20 seconds. {{<issue 26990>}}sst_dump tool. {{<issue 27233>}}remove_corrupt_data_blocks_unsafe flag for yb-ts-cli compact_tablet command. {{<issue 27381>}}load_balancer_count_move_as_add flag to simplify cluster balancing. {{<issue 26259>}}5.0.4 for better package compatibility. {{<issue 26958>}}* wildcard. {{<issue 26671>}}ysql_conn_mgr_sequence_support_mode=pooled_with_currval_lastval. {{<issue 27024>}}ysql_output_buffer_size to 1MiB to enhance query retries and reduce errors. {{<issue 22245>}}ANALYZE command for large rows, preventing RPC errors. {{<issue 27202>}}yb_cancel_transaction by freeing YbcStatus. {{<issue 27554>}}recently_applied_map by not adding read-only transactions, conserving memory. {{<issue 26666>}}DocRowwiseIterator to correctly include nulls for NULLS FIRST sorting. {{<issue 27031>}}yb-pbc-dump to decrypt and process encrypted protobuf files using specified keys. {{<issue 26917>}}pg_locks query reliability when a node is down by continuing to serve requests. {{<issue 27035>}}next_column_id. {{<issue 27064>}}pg_client_use_shared_memory is active. {{<issue 27392>}},{{<issue 27537>}},{{<issue 27526>}}strdup to prevent garbage values. {{<issue 27108>}}pg_locks with specific iterator settings and intent limits. {{<issue 27810>}}Build: 2024.2.3.3-b4
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.3.3-b4
Build: 2024.2.3.2-b6
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.3.2-b6
DocRowwiseIterator to correctly include nulls for NULLS FIRST sorting. {{<issue 27031>}}Build: 2024.2.3.1-b3
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.3.1-b3
Build: 2024.2.3.0-b116
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.3.0-b116
This release brings significant enhancements focused on performance, flexibility, and operational improvements:
Enhanced Query Performance with Parallel Queries {{<tags/feature/ea idea="577">}}
Experience faster query execution on colocated tables with the introduction of PostgreSQL's Parallel Queries. This allows the database to leverage multiple CPU cores for quicker results. Support for sharded tables is coming soon.
Greater Flexibility in Cross-Cluster Replication {{<tags/feature/ea idea="2136">}}
Gain more control with the ability to temporarily enable write operations on xCluster Standby universes and read/write access on replicas in SQL transactional mode. This exception-based access, configurable via a session-level configuration parameter, accommodates specific operational needs and tool integrations.
Enhanced Data Privacy with PostgreSQL Anonymizer {{<tags/feature/ea idea="1497">}}
YugabyteDB now includes the PostgreSQL Anonymizer extension, which allows you to mask or replace sensitive data (PII or commercially sensitive information) directly in the database.
yb_servers function to include universe_uuid for better cluster identification. {{<issue 25818>}}enable_pg_anonymizer flag for enabling the PostgreSQL anonymizer extension. {{<issue 26804>}}yb_index_check. {{<issue 26819>}}CREATE INDEX NONCONCURRENTLY. {{<issue 6237>}}pg_stats. {{<issue 6237>}}NULL values in YCQL JSONB columns. {{<issue 5907>}}MemTracker. {{<issue 26875>}}rocksdb_compact_flush_rate_limit_bytes_per_sec without restarting the tablet server. {{<issue 25611>}}TablespaceParser. {{<issue 25202>}}cdcsdk_update_restart_time_interval_secs flag. {{<issue 25562>}}cdcsdk_update_restart_time_interval_secs flag. {{<issue 25562>}}yb_walsender_poll_sleep_duration_empty_ms from 1 second to 10 ms to speed up replication in sparse workloads. {{<issue 26733>}}REFRESH MATERIALIZED VIEW CONCURRENTLY operation. {{<issue 26205>}}INSERT ON CONFLICT updates. {{<issue 14895>}},{{<issue 25521>}}ysql_dumpall. {{<issue 25701>}}\d command for indexes with spaces in their names. {{<issue 25711>}}INSERT ON CONFLICT DO UPDATE to prevent secondary index corruption. {{<issue 25075>}}ysql_dumpall to combine CREATE ROLE and ALTER ROLE for effective role management. {{<issue 25608>}}yb_get_ybctid_width. {{<issue 24819>}}yb_index_check to verify materialized view indexes' consistency. {{<issue 26639>}}yb_cost_bitmap_table_scan by removing incorrect overwrites. {{<issue 25710>}}yb_neg_catcache_ids to customize negative caching for catalog caches. {{<issue 26311>}},{{<issue 26358>}}yb_enable_geolocation_costing. {{<issue 25967>}}ysql_yb_enable_ash flag. {{<issue 26838>}}pg_enum OID during restore to better trace issues with missing sortorder values. {{<issue 26859>}}ScheduleCheckObjectIdAllocators inadvertently removed. {{<issue 26902>}}ProcessSupervisor cannot restart a process. {{<issue 26731>}}WaitForReplicationDrain behavior by not mislabeling tablets as drained. {{<issue 25457>}}db_max_flushing_bytes to properly limit memory usage under high write loads. {{<issue 26916>}}recently_applied_map by not adding read-only transactions, conserving memory. {{<issue 26666>}}yb_disable_catalog_version_check effect. {{<issue 25929>}}ysql_upgrade by ensuring clean removal from SysTableInfoPB. {{<issue 26595>}}use_bootstrap_intent_ht_filter is set to false, reducing memory usage. {{<issue 26860>}}yb-admin crashes by correctly handling argument count for create_database_snapshot. {{<issue 26899>}}yb_client_admin_rpc_timeout_sec flag. {{<issue 26722>}}COMMIT record errors. {{<issue 26861>}}Build: 2024.2.2.5-b2
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.2.5-b2
Build: 2024.2.2.4-b1
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.2.4-b1
This is a YugabyteDB Anywhere-only release, with no changes to YugabyteDB.
Build: 2024.2.2.3-b1
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.2.3-b1
This is a YugabyteDB Anywhere-only release, with no changes to YugabyteDB.
Build: 2024.2.2.2-b2
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.2.2-b2
Build: 2024.2.2.1-b6
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.2.1-b6
REFRESH MATERIALIZED VIEW CONCURRENTLY operation. {{<issue 26205>}}INSERT ON CONFLICT DO UPDATE to prevent secondary index corruption. {{<issue 25075>}}Build: 2024.2.2.0-b70
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.2.0-b70
yugabyted does not work under Docker in v2024.2.2.0.
cdcsdk_publication_list_refresh_interval_secs to 15 minutes by default. {{<issue 25793>}}cdcsdk_flush_lag metric and fixes bugs in other CDC metrics. {{<issue 19445>}},{{<issue 25819>}}cdc_max_virtual_wal_per_tserver flag. {{<issue 25896>}}ysql_yb_enable_consistent_replication_from_hash_range flag. {{<issue 25897>}}pg_authid table prefetching during login to reduce RPCs and prevent errors. {{<issue 25776>}}ALTER DATABASE RENAME and ALTER DATABASE OWNER to global impact. {{<issue 25742>}}INSERT ON CONFLICT queries using SPI_execute_with_args. {{<issue 25773>}}yb_enable_expression_pushdown on aggregates in trivial subqueries with OFFSET 0 returned values from incorrect columns. {{<issue 24512>}}double for estimates. {{<issue 25862>}}INSERT ON CONFLICT with RETURNING when read batching is enabled. {{<issue 25836>}}ysql_conn_mgr_optimized_extended_query_protocol. {{<issue 24898>}}malloc_usable_size(nullptr). {{<issue 25948>}}use_client_to_server_encryption flag to secure login data. {{<issue 25332>}}Build: 2024.2.1.0-b185
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.1.0-b185
ysql_conn_mgr_use_auth_backend flag. {{<issue 24147>}}ALTER ROLE commands, saving system resources. {{<issue 24390>}}cql_microseconds_timestamps_used. This tracking occurs if the cql_revert_to_partial_microsecond_support flag is true. {{<issue 24776>}}load_balancer_max_inbound_remote_bootstraps_per_tserver flag. {{<issue 2426>}}automatic_ddl_mode to xCluster pollers for enhanced replication handling. {{<issue 24091>}}ProducerSchemaPB with SchemaVersionsPB for xCluster configurations. {{<issue 24901>}}rocksdb_determine_compaction_input_at_start flag, allowing the selection of SST files for compaction when the task starts rather than when it's queued. {{<issue 24541>}}skip_wal_replay_from_beginning_with_cdc flag. {{<issue 24516>}}kNoCacheQueryId to prevent crashes during RocksDB operations. {{<issue 24516>}}ALTER SEQUENCE commands to change sequence name, schema, and owner without errors. {{<issue 17271>}}RelationBuildTriggers. This change avoids high memory consumption when preloading pg_trigger data on schemas with many triggers. {{<issue 24951>}}ON CONFLICT UPDATE issues. {{<issue 25075>}}OpenTable operations. {{<issue 24860>}}SIGTERM handling for cleaner shutdowns. {{<issue 24658>}}ysql_enable_packed_row is off and existing packed rows are present. {{<issue 24545>}}CleanupHiddenTables holds a write lock during Upsert. {{<issue 24929>}}cdc_send_null_before_image_if_not_exists flag is true. {{<issue 18381>}}Build: 2024.2.0.0-b145
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Docker:
docker pull yugabytedb/yugabyte:2024.2.0.0-b145
We're excited to announce the Early Access and General Availability of the following powerful new features in YugabyteDB aimed at simplifying operations, enhancing functionality, and improving performance.
YugabyteDB Kubernetes Operator {{<tags/feature/ea idea="831">}}
The YugabyteDB Kubernetes Operator is a powerful tool designed to automate deploying, scaling, and managing YugabyteDB clusters in Kubernetes environments. It streamlines database operations, reducing manual effort for developers and operators. For more information, refer to the YugabyteDB Kubernetes Operator GitHub project.
Active session history {{<tags/feature/ea>}}
Get real-time and historical views of system activity by sampling session activity in the database. This feature can be used to troubleshoot performance issues effectively. For more information, refer to Active Session History (ASH) documentation.
Instant database cloning {{<tags/feature/ea>}}
Instant database cloning allows you to quickly create independent copies of your database for data recovery, development, and testing. Clones can be created in seconds, and initially consume no additional disk space because they share the same data files as the original database at creation but operate independently after that. Clones can be created as of now or at any time in the recent past (within a configurable history retention period), enabling developers to experiment without impacting production performance. This feature also provides a safety net for rapid recovery from accidental SQL or CQL human errors that cause data loss or corruption.
pg_cron extension {{<tags/feature/ga>}}
The pg_cron extension brings a cron-based job scheduler into the database. With pg_cron, you can schedule YSQL commands using familiar cron syntax, including jobs on intervals as fine as seconds. While pg_cron operates on a single node known as the pg_cron leader, the queries it schedules leverage the full resources of the distributed cluster. On node failure, leadership is automatically transferred, ensuring continuous availability and smooth scheduling operations.
pg_partman extension {{<tags/feature/ea>}}
Use the pg_partman extension to create and manage both time- and serial-based (aka range-based) table partition sets. pg_partman simplifies managing table partitions based on time or serial IDs, automating their creation and maintenance. pg_partman is often used in combination with pg_cron for data lifecycle management, and specifically for managing data aging, retention, and expiration.
Colocated tables with tablespaces {{<tags/feature/ea idea="1104">}}
Starting this release, you can create colocated tables with tablespaces. With this enhancement, you can now take advantage of colocated tables for geo-distributed use cases, eliminating the need for trade-offs between distributing data across specific regions. You enable the feature using the ysql_enable_colocated_tables_with_tablespaces flag.
Improvement to backward scans {{<tags/feature/ea idea="1326">}}
The performance of YSQL backward table scans (for example, a descending-sorted query occurs against a table that is sorted ascending) has been improved by up to 10x in this release. You enable the feature using the use_fast_backward_scan flag.
Improved query performance by using shared memory for PG-to-TServer communication {{<tags/feature/ga>}}
This enhancement significantly reduces communication overhead between the PostgreSQL backend and TServer, which plays a critical role in both read and write flows. We observed a 10+% increase in throughput and a 10+% decrease in latency in workloads like TPCC and YCSB. This improvement is particularly impactful in the following scenarios:
This feature is controlled by the pg_client_use_shared_memory flag, which is enabled by default starting in v2024.2.0.
New YB-TServer and YB-Master memory allocation settings {{<tags/feature/ga>}}
YugabyteDB uses memory division flags to specify how memory should be divided between different processes (for example, YB-TServer versus YB-Master) on a YugabyteDB node as well as within processes. New v2024.2.0 universes created using yugabyted or YugabyteDB Anywhere use the recommended memory settings for YSQL (introduced in v2024.1) by default (the --use_memory_defaults_optimized_for_ysql flag is set to true).
Also turned on by default is --enforce_tablet_replica_limits, which enforces tablet replica limits based on the memory allocated to per-tablet overhead across the universe. When turned on, any CREATE TABLE request that would create too many tablets returns an error, and tablet splitting is also blocked if the result would be too many tablets.
In addition, YugabyteDB will alert you if your system currently has too many tablets. If you are upgrading a universe, you may want to review your memory division settings and adjust them if desired; see Best practices.
xCluster support in yugabyted. Adds support for setting up and managing xCluster replication between two clusters deployed using yugabyted.
Semi-automatic xCluster replication. Provides simplified management of YSQL transactional xCluster replication. xCluster management operations are now only required when adding and removing databases from replication. DDL changes can now be made by any database administrator or user with database permissions, and no longer require SSH access or intervention by an IT administrator.
xCluster observability. Improved ability for users to monitor xCluster metrics like Replication Lag, Safetime Lag, and replication errors. {{<tags/feature/ea>}}
Follower reads. Added support for setting yb_read_from_followers=true inside a transaction block using SET LOCAL. This allows greater convenience when setting follower reads for single transactions. You must set yb_read_from_followers before any statement is executed in the block.
Improved query performance. Implemented shared memory for PostgreSQL to TServer communication to minimize latency and enhance query performance by reducing communication overhead. This enhancement is part of Enhanced PostgreSQL compatibility mode.
Precision Time Protocol (PTP) support. PTP is a network protocol designed for highly accurate time synchronization across devices in a network. {{<tags/feature/tp>}}
AWS ClockBound support. ClockBound is an open source daemon that allows you to compare timestamps to determine order for events and transactions, independent of an instance's geographic location; it improves clock accuracy by several orders of magnitude. {{<tags/feature/tp idea="1807">}}
yb_enable_inplace_index_update. {{<issue 20908>}}UNLOGGED tables syntax, handling it as LOGGED with a warning. {{<issue 23895>}},{{<issue 23889>}}pg_shdepend in YbInitPinnedCacheIfNeeded for cross-database DDLs. {{<issue 21635>}}ALTER TABLE with DDL atomicity. {{<issue 21787>}}localhost:13000/statements for enhanced tracking. {{<issue 21735>}}ALTER TABLE in production builds, ensuring reliable schema updates. {{<issue 21787>}}yb_parallel_range_size parameter to customize parallel range sizes. {{<issue 21928>}}keep_order field from YbctidGenerator for streamlined processing. {{<issue 21944>}}yb_enable_parallel_append flag to disable parallel append and avoid exposing unannounced features. {{<issue 21934>}}ybgin and lsm access methods, enhancing support for new index types. {{<issue 22195>}}ybrowid handling. {{<issue 22536>}}ConsistentReadPoint state. {{<issue 22597>}}FLAGS_use_fast_backward_scan is enabled. {{<issue 22370>}}ysql_conn_mgr_use_auth_backend flag. {{<issue 24147>}}GROUP BY in YCQL; introduces flag to suppress it. {{<issue 13956>}}XClusterSourceManager. {{<issue 21325>}}allowed_preview_flags_csv. {{<issue 21484>}}GetChangesForXCluster does not return invalid safe times. {{<issue 21528>}}are_nodes_safe_to_take_down_timeout_buffer_ms. {{<issue 21855>}}replicated_ddls before execution. {{<issue 21943>}}XClusterClient::CreateXClusterStream<Async>. {{<issue 22343>}}skip_producer_stream_deletion flag to speed up xCluster DR failovers. {{<issue 22050>}}SCHECK_PB_FIELDS_NOT_EMPTY to ensure PB fields are non-empty. {{<issue 22182>}}DROP TABLE operation with atomic DDL waits until the table is fully deleted. {{<issue 22184>}}yb_xcluster_ddl_replication.c into multiple files. {{<issue 22190>}}catalog_manager by relocating RPC endpoints to MasterClusterHandler. {{<issue 19715>}}read-time option to ysql_dump help for point-in-time database dumps. {{<issue 21886>}}xcluster_consumer_thread_pool_size for clearer usage and efficiency. {{<issue 20305>}}yb::client in CDCService to reduce resource usage and fix optimization issues. {{<issue 22893>}}XClusterConsumer. {{<issue 22908>}}external_hybrid_time in log-dump to detect xCluster target writes. {{<issue 22918>}}SOURCE_UNREACHABLE and SYSTEM_ERROR enums to xCluster for better error reporting. {{<issue 22996>}}IntentAwareIterator. {{<issue 23420>}}FLAGS_tablet_split_min_size_ratio. {{<issue 21458>}}master_heartbeat_service.cc. {{<issue 21899>}},{{<issue 19715>}}master_heartbeat_service.cc. {{<issue 21899>}},{{<issue 19715>}}master_heartbeat_service.cc. {{<issue 21899>}},{{<issue 19715>}}enable_rwc_lock_debugging flag to control RWCLock debug logging. {{<issue 22807>}}CloneStateInfo object handling to std::shared_ptr for future flexibility. {{<issue 23036>}}YBTableName settings. {{<issue 23371>}}hidden state in Master/Tserver UI tables. {{<issue 22521>}}pg_yb_logical_client_version table to manage session configurations. {{<issue 23871>}}ABORTED state for failed clones in YugabyteDB. {{<issue 21054>}}yb-admin commands to manage CDC streams, including removing tables. {{<issue 22876>}},{{<issue 22773>}}yb_enable_cdc_consistent_snapshot_streams flag is now default true and automatic. {{<issue 22984>}}cdcsdk_publication_list_refresh_interval_secs flag value for safer LSN handling. {{<issue 21796>}}ysql_yb_default_replica_identity flag. {{<issue 22326>}}cdcsdk_enable_dynamic_table_addition flag. {{<issue 22406>}}ysql_yb_enable_replica_identity flag. {{<issue 21314>}}yb_read_time from walsender. {{<issue 22379>}}skip_wal_replay_from_beginning_with_cdc flag. {{<issue 24516>}}RENAME DATABASE accurately follows connection rules. {{<issue 21284>}}role_oid instead of role. {{<issue 21505>}}role_oid for session_authorization in Connection Manager. {{<issue 21637>}}/pitr endpoint and UI screen for listing scheduled PITRs. {{<issue 21355>}}upgrade_finalize command to yugabyted CLI for post-upgrade tasks. {{<issue 21888>}}yb-master and yb-tserver for better setting accuracy. {{<issue 22061>}}yugabyted without code duplication. {{<issue 22091>}}additional_data_dir flag. {{<issue 22126>}}yugabyted commands. {{<issue 22349>}}permanent_uuid to :7000/api/v1/tablet-servers for more reliable UUID retrieval. {{<issue 22532>}}prev_ticks_ each iteration. {{<issue 22910>}}data_dir is missing from the configuration. {{<issue 23052>}}collect_logs now works even if yugabyted is not running. {{<issue 23210>}}pg_locks. {{<issue 23266>}}Scanned Rows. {{<issue 21229>}}CacheMemoryContext to stabilize cache memory size after refresh. {{<issue 22262>}}ddl_rollback_enabled to yb_ddl_rollback_enabled for clarity. {{<issue 21480>}}catalog_version_table_in_perdb_mode is set to true. {{<issue 21481>}}ysql_yb_enable_optimizer_statistics flag. {{<issue 21650>}}ALTER TABLE SET TABLESPACE operation. {{<issue 21655>}}ysql_min_new_version_ignored_count flag to prevent delays in TServer crashes when versions mismatch. {{<issue 21776>}}yb_enable_ddl_atomicity_infra parameter. {{<issue 21947>}}postgres_fdw.c. {{<issue 22070>}}old rewrite off. {{<issue 22064>}}pg_locks displays correct table OID instead of relfilenode after table rewrites. {{<issue 22081>}}YB_AT_REWRITE_ALTER_PRIMARY_KEY to 0x8000. {{<issue 22086>}}yb_debug_log_catcache_events. {{<issue 22139>}}YbDdlRollbackEnabled to eliminate GCC errors. {{<issue 22334>}}yb_get_range_split_clause to handle decoding errors gracefully, preventing backup issues. {{<issue 22356>}}ybcFetchNextHeapTuple by properly freeing YBCStatus. {{<issue 22396>}}ALTER TABLE. {{<issue 22562>}}kGroupEnd markers. {{<issue 22615>}}IN expressions on single columns to prevent incorrect tuple path execution. {{<issue 22704>}}EXPLAIN command to accurately report subquery distinct index scans. {{<issue 22923>}}Values Scan by repairing SubPlans in multi-row VALUES lists. {{<issue 22967>}}yb_pclose_check. {{<issue 23057>}}drop column operations if alterations miss the initial completion step. {{<issue 23100>}}REINDEX and TRUNCATE on system tables using table rewrite. {{<issue 24356>}}skip_master_flagfile. {{<issue 23145>}}ON CONFLICT UPDATE issues. {{<issue 25075>}}cassandra role on cluster restart. {{<issue 21057>}}ysql_skip_row_lock_for_update as an auto-flag to ensure safe upgrades. {{<issue 22057>}}OpenTable operations. {{<issue 24860>}}AsyncRpc::Failed to prevent crashes. {{<issue 21402>}}min_secustomerent_size_to_rollover_at_flush to specify units. {{<issue 21691>}}enable_automatic_tablet_splitting flag to ensure xCluster compatibility. {{<issue 22088>}}scoped_refptr to std::shared_ptr to safely manage memory in TabletInfo, preventing use-after-free errors. {{<issue 18257>}},{{<issue 21139>}}SIGTERM handling for cleaner shutdowns. {{<issue 24658>}}boost::regex_match to eliminate false positives. {{<issue 21585>}}yb-master by checking for null pointers before use. {{<issue 21648>}}PollTransactionStatusBase. {{<issue 21773>}}prev_op. {{<issue 21811>}}boost::regex_match. {{<issue 21585>}}min_running_ht initialization until after tablet bootstrap completes. {{<issue 22099>}}skip_table_tombstone_check is set for colocated tables. {{<issue 22115>}}cluster_config_. {{<issue 21775>}}yb_client in xCluster Consumer. {{<issue 22845>}}pg_locks to handle lock queries without specified transactions correctly. {{<issue 22181>}}read-time option in ysql_dump help to ensure correct DDL handling. {{<issue 23299>}}yb-admin to correctly accept snapshot retention settings. {{<issue 23332>}}enable_pg_savepoints flag to prevent incorrect behaviors and enhance transaction reliability. {{<issue 29018>}}ACTIVE fails. {{<issue 22601>}}pg_replication_slots when ysql_yb_enable_replication_commands is false. {{<issue 23096>}}GetChanges RPC by deleting its MemoryContext. {{<issue 22328>}}ListReplicationSlots for better debugging of CDC state issues. {{<issue 21652>}}cdcsdk_enable_identification_of_non_eligible_tables for automatic identification of non-eligible tables in CDC streams, eliminating the need for manual master restarts for cleanup control. {{<issue 22876>}},{{<issue 22835>}},{{<issue 22773>}}table_name and table_id attributes from CDCSDK metrics to prevent TServer crashes. {{<issue 22142>}}yb_is_omitted array. {{<issue 21946>}}BEGIN record in CDC streams when no DML changes occur. {{<issue 21646>}}