docs/content/stable/releases/ybdb-releases/end-of-life/v2.18.md
{{< warning title="Upgrade to release 2.18.7.0 or later" >}}
To avoid a rare race condition that can be encountered in v2.18.5-2.18.6, upgrade to release v2.18.7.0 or later.
{{< /warning >}}
What follows are the release notes for the YugabyteDB v2.18 release series. Content will be added as new notable features and changes are available in the patch releases of the YugabyteDB v2.18 release series.
Build: 2.18.9.0-b17
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
docker pull yugabytedb/yugabyte:2.18.9.0-b17
IN expressions on single column from wrongly taking the tuple path, ensuring correct data processing. {{<issue 22704>}}Build: 2.18.8.1-b3
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
docker pull yugabytedb/yugabyte:2.18.8.1-b3
Build: 2.18.8.0-b42
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
docker pull yugabytedb/yugabyte:2.18.8.0-b42
yb_silence_advisory_locks_not_supported_error as a temporary solution for users to avoid disruption when using advisory locks without actual lock acquisition. {{<issue 19974>}}ycql_suppress_group_by_error available for compatibility issues. {{<issue 13956>}}join flag without throwing any errors. {{<issue 20684>}}defGetBoolean function to parse string values "0" and "1" as false and true respectively, and shifts a verification step to a earlier spot in the CREATE TABLE execution path, ensuring successful table partition creation. {{<issue 20302>}},{{<issue 20914>}}GetDbBlockCacheNumShardBits definition. {{<issue 21955>}}yb_get_range_split_clause to handle GinNull decoding failure in GIN Index partitions without blocking backups. {{<issue 22356>}}IN expressions on single column from wrongly taking the tuple path, ensuring correct data processing. {{<issue 22704>}}Create Table operation fails if Alter Replication encounters an error, enhancing the reliability of replication setup. {{<issue 21732>}}2.23.0.0-b37-arm. {{<issue 21648>}}cached_schema_details when executing a new GetChanges request if the client indicates a necessity for the schema. {{<issue 20698>}}Build: 2.18.7.0-b30
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
docker pull yugabytedb/yugabyte:2.18.7.0-b30
REFRESH MATERIALIZED VIEW as a non-disruptive change, preventing unnecessary transaction terminations. The default option, REFRESH MATERIALIZED VIEW NONCONCURRENTLY, modifies metadata but without making a disruptive alteration. {{<issue 20420>}}PDEATH_SIG mechanism signals child processes of their parent process's exit, by correctly configuring all PG backends immediately after their fork from the postmaster process. {{<issue 20396>}}disable_tablet_splitting, addressing a previous condition where only one was required, thereby enhancing backup process reliability. {{<issue 8744>}}cdc_sdk_safe_time only when a GetChanges explicit checkpoint acknowledgment is received, improving data reliability. {{<issue 15718>}}{{< warning title="Use 2.18.7.0 or later.">}} {{< /warning >}}
ADD COLUMN...DEFAULT, to indicate existing rows won't be backfilled with the default value, enhancing user awareness. Suppression possible by setting ysql_suppress_unsafe_alter_notice gflag to true. {{<issue 19360>}}ysql_max_read_restart_attempts and ysql_max_write_restart_attempts gflags with yb_max_query_layer_retries, applies limit to Read Committed isolation statement retries, and adjusts retry_backoff_multiplier and retry_min_backoff defaults. {{<issue 20359>}}collect_update_consensus_traces GFlag, providing trace logs for UpdateConsensus from remote followers while also ignoring request.trace_requested if both leader and follower doesn't support this change. {{<issue 19417>}}FLAGS_retryable_request_timeout_secs =0. {{<issue 18736>}}schema.table_properties.retain_delete_markers is reset to false when index backfilling is done. {{<issue 19731>}}DeleteTablet operation. {{<issue 19840>}}retain_delete_markers property to enhance performance. {{<issue 20247>}}Proc struct without returning it, effectively limiting webserver restarts to eight times. {{<issue 20154>}}:13000/memz and :13000/webserver-heap-prof. {{<issue 20157>}}:13000/memz and :13000/webserver-heap-prof endpoints to improve visibility into the webserver memory usage while managing tcmalloc stats and current allocations. Integrates a new runtime variable yb_pg_metrics.webserver_profiler_sample_freq_bytes to control tcmalloc sampling frequency. {{<issue 20157>}}pg_stat_statements.yb_qtext_size_limit flag to control the maximum file size read into memory, preventing system crashes due to oversized or corrupt qtext files. {{<issue 20211>}}MyLatch is used consistently throughout the process lifecycle. {{<issue 20309>}}yb_catalog_version, by ensuring the function's existence post-normal migration. {{<issue 18507>}}apply records stutter and fetch older changes. {{<issue 19728>}}WriteQuery leak issue in CQL workloads, ensuring proper execution and destruction of queries, while preventing possible tablet shutdown blockages during conflict resolution failure. {{<issue 19919>}}SendAbortToOldStatusTabletIfNeeded try to send the abort RPC, thus preventing avoidable FATALs for failed geo promotions. {{<issue 17113>}}enable_process_lifetime_heap_sampling flag and allows to control tcmalloc sampling via the profiler_sample_freq_bytes flag alone, enhancing user control over database sampling settings. {{<issue 20236>}}kConflict error, enhancing overall system throughput by eliminating unnecessary blockages without waiting for the next RPC restart. {{<issue 20329>}}request is too old errors during YSql DDLs. {{<issue 20330>}}rpcs_.Shutdown is invoked after all status resolvers have been shut down. {{<issue 19823>}}cdcsdk_sent_lag metric to prevent steep, disproportionate increases by updating the last_sent_record_time when a SafePoint record is spotted, in addition to DMLs and READ ops. {{<issue 15415>}}tserver start and tserver stop scripts to successfully terminate all running PG processes, irrespective of their PID digit count. {{<issue 19817>}}{{< warning title="Use 2.18.7.0 or later.">}} {{< /warning >}}
{{< warning title="Use 2.18.7.0 or later.">}} {{< /warning >}}
{{< warning title="Use 2.18.7.0 or later.">}} {{< /warning >}}
enable_tablet_split_of_cdcsdk_streamed_tables (default:false) to toggle automatic tablet splitting for tables in a CDCSDK stream, enhancing user control over replication processes. {{<issue 19482>}}auto_explain.log_dist and can be turned off as desired. {{<issue 17508>}}is_single_row_txn for finer control over non-transactional writes required by COPY, index backfill, or when yb_disable_transactional_writes is set, preventing issues during non-bufferable operations for single row transactions. {{<issue 4906>}}create index NONCONCURRENTLY, preventing automated index backfilling during the backup-restore process, making it quicker and more effective. {{<issue 19457>}}Disable OpenSSL EVP digest padding in pgcrypto, paving the way for OpenSSL 3.0+ upgrade. {{<issue 19733>}}Add alternative output for OpenSSL 3 without legacy loaded, aiding OpenSSL 3.0+ upgrade. {{<issue 19734>}}ALTER <object> DEPENDS ON EXTENSION, although it's not currently available in YugabyteDB. {{<issue 14419>}}/memz and /webserver-heap-prof endpoints for greater visibility into webserver memory usage. Also introduces a new runtime variable yb_pg_metrics.webserver_profiler_sample_freq_bytes for controlling tcmalloc sampling frequency. {{<issue 20157>}}master_enable_universe_uuid_heartbeat_check = true, requiring user to manually update post-upgrade. {{<issue 17904>}}rocksdb_check_sst_file_tail_for_zeros flag, enabling verification of SST data file trailing zeros and reporting errors for anomalies detected. {{<issue 19691>}}rocksdb_max_sst_write_retries flag, enhancing data reliability. {{<issue 19730>}}master_join_existing_universe flag value check before restoring the initial sys catalog snapshot to avoid incorrect operations. {{<issue 19357>}}yugabyted start command to interpret 0.0.0.0 as 127.0.0.1 in the advertise_address, aligning with the IP use in master, tserver, and yugabyted-UI. {{<issue 18580>}}ALTER TABLE DROP CONSTRAINT IF EXISTS command to execute without throwing an error, even when the table lacks a constraint, enhancing the user experience. {{<issue 17659>}}default_expectfile in pg_regress. {{<issue 19737>}}ysql_enable_pg_per_database_oid_allocator added to toggle between old and new allocator behavior. {{<issue 16130>}}dead tuples by allowing AdvanceToNextRow to return false without seeking further if it encounters a dead tuple. {{<issue 19911>}}relforcerowsecurity, preserving the Row-Level Security (RLS) behavior. {{<issue 19815>}}alter schema during local bootstrap and resolves inconsistencies between checkpoint and metadata, enhancing reliability of the database operations. {{<issue 19546>}}retain_delete_markers field on index backfilling, addressing an issue where delete markers persisted in SST files. {{<issue 19544>}}tablet_creation_timeout_ms from 30 seconds to 600 seconds to avoid tablet replacement during table creation, enhancing restore operations' success rate under high network latency conditions. {{<issue 13030>}}is_running, ensuring stability for empty YCQL tables, and preventing retain_delete_markers from being incorrectly set. {{<issue 19933>}}ExternalMaster* to prevent timing out when removing a follower with a transitioning server. {{<issue 19927>}}cdc_state fails, ensuring consistent and correct list of tablets, enabling your client to take suitable action. {{<issue 19428>}}cdc_state on new tablets, resolving race conditions due to tablet split and ensuring accurate metadata cleanup in cdc_state table for dropped tables. {{<issue 19746>}}Avoids a segmentation fault in the stats collector following a Postmaster reset, solving potential crashes experienced when queries are terminated by SIGSEGV or SIGKILL. {{<issue 19572>}}
Eliminates potential crashes by adding nullity checks to CDCServiceImpl::GetChanges that previously could return a null pointer. {{<issue 19524>}}
Allows for the dynamic adjustment of previously hardcoded ports such as master_rpc_port, tserver_webserver_port, and master_webserver_port based on user's custom configurations, thereby facilitating successful creation of multi-region/zone clusters even with non-default port settings. {{<issue 15334>}}
Build: 2.18.4.2-b2
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
docker pull yugabytedb/yugabyte:2.18.4.2-b2
This is a YugabyteDB Anywhere-only release, with no changes to the database.
Build: 2.18.4.1-b3
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
docker pull yugabytedb/yugabyte:2.18.4.1-b3
Build: 2.18.4.0-b52
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
docker pull yugabytedb/yugabyte:2.18.4.0-b52
yugabyted start --secure commandGetCheckpointResponse only if it is presentCleanUpCDCStreamsMetadataGetChangesRequest when it is not nullBuild: 2.18.3.1-b1
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
docker pull yugabytedb/yugabyte:2.18.3.1-b1
Build: 2.18.3.0-b75
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
docker pull yugabytedb/yugabyte:2.18.3.0-b75
N/A
Build: 2.18.2.1-b1
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
docker pull yugabytedb/yugabyte:2.18.2.1-b1
certs_dir is providedN/A
Build: 2.18.1.0-b84
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
docker pull yugabytedb/yugabyte:2.18.1.0-b84
N/A
Build: 2.18.0.1-b4
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
docker pull yugabytedb/yugabyte:2.18.0.1-b4
N/A
Build: 2.18.0.0-b65
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
docker pull yugabytedb/yugabyte:2.18.0.0-b65
configure data_placement not working with constraint value with uppercasesN/A