What's new in the YugabyteDB Anywhere v2024.1 STS release series

What follows are the release notes for all releases in the YugabyteDB Anywhere (YBA) v2024.1 series. Content will be added as new notable features and changes are available in the patch releases of the YBA v2024.1 series.

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

Replicated end of life

The 2024.1 release series is not available for installation using Replicated.

YugabyteDB Anywhere is ending support for Replicated installation at the end of 2024.

If you have a Replicated installation, you must migrate from Replicated to YBA Installer before upgrading YBA to v2024.1. See Migrate from Replicated.

Changes to supported operating systems

YugabyteDB 2024.1.0.0 and newer releases do not support v7 Linux versions (CentOS7, Red Hat Enterprise Linux 7, Oracle Enterprise Linux 7.x), Amazon Linux 2, and Ubuntu 18. If you're currently using one of these Linux versions, upgrade to a supported OS version before installing YugabyteDB v2024.1.0. Refer to Operating system support for the complete list of supported operating systems.

v2024.1.0.0 - June 4, 2024

Build: 2024.1.0.0-b129

Third-party licenses: YugabyteDB, YugabyteDB Anywhere

Download

Highlights

Enhanced Postgres Compatibility Mode EA

We're pleased to announce the early access of the new Enhanced Postgres Compatibility Mode in the 2024.1.0.0 release. This mode enables you to take advantage of many new improvements in both PostgreSQL compatibility and performance parity, making it even easier to lift and shift your applications from PostgreSQL to YugabyteDB. When this mode is turned on, YugabyteDB uses the Read-Committed isolation mode, the Wait-on-Conflict concurrency mode for predictable P99 latencies, and the new Cost Based Optimizer EA that takes advantage of the distributed storage layer architecture and includes query pushdowns, LSM indexes, and batched nested loop joins to offer PostgreSQL-like performance.

You can enable the compatibility mode by setting the following flags on a universe:

yb_enable_read_committed_isolation=true
ysql_enable_read_request_caching=true
"ysql_pg_conf_csv": "yb_enable_base_scans_cost_model=true,"
                      "yb_bnl_batch_size=1024,"
                      "yb_fetch_row_limit=0,"
                      "yb_fetch_size_limit=1MB,"
                      "yb_use_hash_splitting_by_default=false"

Note: When enabling the cost models, ensure that packed row for colocated tables is enabled by setting the --ysql_enable_packed_row_for_colocated_table flag to true.

New Yugabyte Kubernetes Operator TP

The new Yugabyte Kubernetes Operator is a powerful tool designed to automate the deployment, scaling, and management of YugabyteDB clusters in Kubernetes environments. It streamlines database operations, reducing manual effort for developers and operators.

YugabyteDB Anywhere (YBA) CLI TP

YBA CLI is a brand-new open-source tool written in GoLang that's used to interact with YBA using shell commands. With minimal configuration, you can start running commands from the command line, providing functionality equivalent to that offered by the browser-based YBA interface and YBA REST APIs.

New features

  • Kubernetes Resource Specification. You can configure CPU and memory needs for YB-TServer and YB-Master pods natively, instead of using the instance types API. EA

  • Replace node. With this new node action, you can directly replace a database node in a universe with a new one to handle problematic nodes.

  • Rollback after database upgrade. Ability to roll back an upgrade to the pre-upgrade release. (The release from which the database was upgraded). You can roll back a database upgrade only to the pre-upgrade release.

  • Database registration simplification. Simplification of process for registering database versions (and their binaries) with YBA. The UX has been dramatically simplified. EA

  • Force update of EIT certs. If EIT certs expire, customers can now "force update" the replacement of certs with new ones, removing the need to call Technical Support. EA

  • Support for OIDC groups in YugabyteDB Anywhere. In support of role-based access control (RBAC), ability to assign YugabyteDB Anywhere roles to groups from an OIDC-based Identity Provider. EA

  • Decoupling. YBA can now be upgraded to a version without requiring its database universe(s) to be upgraded. Versioning is now independent. This is enabled by features including, a published compatibility matrix and database registration simplification.

  • YBA HA enhancements. Simplified user experience for active/passive YBA deployments.

Change log

View the detailed changelog

Improvements

  • Changes the clock skew alert threshold from 500ms to 250ms, enabling detection of clock skew issues before TServer starts crashing, giving users more reaction time. PLAT-13249
  • Now includes previously missed migration settings and properly reloads system units during restart. PLAT-13330,PLAT-13331,PLAT-13340
  • Introduces an adjustable 1-minute delay to AutoFlags promotion before undertaking any other action. PLAT-13139
  • Fixes the failure of admin user DDL due to concurrent DDLs across all cloud providers. PLAT-13221
  • Modifies the password reset URL to a new URL on the platform. PLAT-13510
  • Alerts now raise 30 days prior to certificate expiry for better visibility, reducing the risk of missed expiration. PLAT-13348
  • Displays clear optional tags and tooltips for Azure provider's Network Resource Group and Network Subscription ID fields for better understanding when to fill them. PLAT-12546
  • Adds ikeep to the XFS mount options to mitigate possible key duplication in the block cache. PLAT-13192

Bug fixes

  • Bypasses clock sync check on a node if chronyc is not installed. PLAT-13137
  • Enables the retrieval of api_token from the HA follower, supporting existing automation functions. PLAT-13274,PLAT-13267
  • Adds missing cloud regions in YBA's metadata, keeping it in sync with available regions for EKS/GKS/AKS Kubernetes providers. PLAT-13374
  • Modifies node metrics file creation to explicitly set permissions, ensuring accessibility despite custom system umasks. PLAT-13378
  • Fixes LDAP validation to correctly identify the first instance of ldap using regex with whitespace characters. This eliminates previous false validations. PLAT-13575
  • Disables weak C grade ciphers for key exchange to prevent security threats. Adjusts cipher suite list for Prometheus, allowing modification during installation/upgrade to disable certain ciphers. Ensures only A grade ciphers with key size greater than 2048 bits are used, enhancing security against potential attacks. PLAT-9590
  • Allows users to filter out resolved alert notifications via WebHook channel configuration. PLAT-13506
  • Corrects the checksum mismatch in the V342 migration to ensure successful upgrades from 2.14 to later branches. PLAT-13977
  • Prevents universe chain upgrade failure from 2.0 to 2.18 and 2.20 by ensuring the clock-script doesn't run during yb-process start command if it's not present or executable. PLAT-13444
  • Prevents Edit Universe modal from wrongly displaying master placement as Place Masters on the same nodes as T-Servers for a dedicated universe, providing accurate universe creation details. PLAT-13445
  • Enables handling of release artifacts that come with sha1 or md5 checksums after release migrations. PLAT-13716
  • Deprecates the change_password API due to lack of current password confirmation and introduces a new reset_password API that ensures increased account security by identifying the user through the Auth/API token only. PLAT-10472
  • Enables better handling of Gflag upgrade failure in Dual NIC case, rectifying issues with communication using secondary IPs. PLAT-13223
  • Allows for consistent loading of the placement modal in the create universe form regardless of the selected provider. PLAT-13294
  • Tunes GC generation sizes and fixes WSClient memory leak, also disables process metrics collector to prevent growing memory allocation over time. PLAT-13619
  • Adjusts tab display in the UI to prevent hiding due to addition of xCluster Disaster Recovery and CDC Replication Slots tabs. PLAT-13678
  • Restores initialization of the local instance's last backup time during HA sync for accurate updates. PLAT-13708
  • Fixes inconsistency in auto-generated YBA bundles, enabling correct default configuration when YBA version is bumped for AMI. PLAT-13796
  • Removes the misuse of defaultImageBundle in universe when custom AMI is specified using YBA's machineImage. PLAT-13800
  • Allows error-free query for releases with artifacts of a specific deployment type by excluding artifacts without a linked release. PLAT-14057
  • Enables direct file copying when creating a tarball for seamless third-party packages incorporation. PLAT-12564
  • Allows raising universe level alerts when the YBA Node Agent is down for over a minute. PLAT-12835
  • Allows starting a new master in stop or remove node with AZ UUID or region name for uniqueness. PLAT-12886
  • Shifts the useIMDSv2 field from AWS cloudinfo to the ImageBundle details for better provider creation payload configuration. PLAT-12967
  • Corrects the NTP Clock Sync health check failure on Amazon Linux 2 CIS hardened image. PLAT-13000
  • Enables preflight check validation for image bundles during provider creation/editing on AWS, preventing creation with missing AMI in corresponding region. PLAT-13111
  • Resolves rare memory pressure issue causing bad_alloc exception in RunOp queue and clears tablets_to_ip map before retry to prevent unwarranted uploads. Increases YBC client and server version. PLAT-13157
  • Allows editing the number of read replicas in K8S from both the backend and UI without error. PLAT-13163
  • Allows Kubernetes to refresh certificates using YBA Universe metadata's rootCA rather than taskParams, enhancing data backup integrity during a task failure. Resolves a under replicated error in node-to-node root certificate rotation, maintaining stability. PLAT-13172
  • Increases the YBC client and server version to 2.1.0.0-b8, solves the issue with deletion of backups on certain NFS mount points. PLAT-13197
  • Adds a database version check to prevent software upgrade failures on xcluster universe. PLAT-13204
  • Allows recognition of custom alert names for replication lag by using the template field instead of the name field on the YBA UI, increasing alert configuration flexibility. PLAT-13211
  • Allows Python to access seobject library via policycoreutils-python-utils on Alma9 for SSH port registration. PLAT-13276
  • Allows fetching the updated provider object from the database thereby ensuring correct SSH port configuration during bundle setup, preventing generation of bundles with wrong ports. PLAT-13325
  • Allows sort by version, date, and release state, and changes "copy file path" string to "copy file name". PLAT-13350,PLAT-13362
  • Adjusts migration names to successfully upgrade from 2024.1.0.0-b32 to 2024.1.0.0-b35 avoiding previous errors. PLAT-13379
  • Relocates the IMDSv2 toggle to the image bundle details on AWS provider creation page, improving customization per image bundle. PLAT-13429,PLAT-13333
  • Adds a tooltip in the UI to explain the requirement of OIDC provider metadata. This offers guidance for configuring YBA in an air-gapped mode. PLAT-13446
  • Supports the inclusion of unknownField in the userIntent from subsequent configure calls. PLAT-13462
  • Changes made to fall back to YugabyteDB's default AMI for YugabyteDB managed bundles if the AMI is not available in a particular region. For custom bundles, there's no fallback mechanism and it will fail early in situations where the respective AMI is missing. Dependency on region to ybImage removed. PLAT-13500
  • Adjusts Universe create and upgrade UI workflows to use the new ybdb_releases API, recommending suitable DB versions. PLAT-13435,PLAT-13519
  • Fixes UI crash tied to running DeleteNode after the last placement update task failure. PLAT-13546
  • Fixes the JS error causing unresponsiveness when clicking on the In-Use Universes tab in the releases page. PLAT-13549
  • Simplifies AWS/GCP/AZU provider settings by eliminating the useTimeSync toggle when setUpChrony is already enabled. Adds enable_imdsv2_support runtime flag to AWS provider form and allows toggling of IMDSv2 in YBAManged Imagebundle. PLAT-13551,PLAT-13536
  • Disables kamon status page module to tackle security concerns. PLAT-13563
  • Ensures the Upgrade Available link only appears when upgrades are genuinely present and makes the CDC link clickable. PLAT-13677,PLAT-13675
  • Allows manual backups on HA standby nodes without interfering with the node's later promotion to primary. PLAT-13683
  • Resolves Jenkins build errors by using an older version of a dependency causing issues. PLAT-13690
  • Allows rerun of GFlagsUpgrade task without the AreNodesSafeToTakeDown precheck, making task retries successful. PLAT-13703
  • Removes NGINX from Yugaware charts branch 2024.1 and updates the version in the upgrade chart to 1.25.2. PLAT-10837
  • Allows adding Aarch Linux Version even without any other aarch linux versions in AWS provider. PLAT-13744
  • Fixes an issue that caused data from newer backups to be wrongly restored during the restoration of older backups. PLAT-13905
  • Resolves the issue of universe creation failure due to incorrect Image Bundle UUID by using the specified ec2-user. PLAT-14004
  • Displays error when a selected zone doesn't contain any available nodes during universe configuration. PLAT-12959
  • Ensures index tables aren't overlooked when computing bootstrap parameters, preventing failure when adding a table to a database already containing an index. Also removes options to add/remove index tables in transactional xCluster configs. PLAT-13308
  • Allows users to pass depreciated fields when editing a provider, ensuring compatibility with providers created using legacy APIs. Fixes issue where providers created on version 2.14 were not editable through UI. PLAT-13394
  • Now generates necessary artifacts correctly when ReleaseMetadata contains both a local and a helm chart, and ensures inclusion of local helm charts on YBAd restart. PLAT-13558,PLAT-13561
  • Ensures generation of YBA-managed bundles even if yugaware_property contains legacy ones, paving the way for successful version comparison and patching. PLAT-13681
  • Skips checks for ListLiveTabletServers API for YugabyteDB versions earlier than 2.8 to prevent chain upgrade failures. PLAT-13657
  • Ensures automatic setting of default image when creating a universe, enhancing user experience. PLAT-13722
  • Displays correct SSH port in the connection modal on user interface. PLAT-13754
  • Enables proper import/export of universe with newer releases, preventing attach/detach universe failures. PLAT-13761
  • Eliminates deprecated vnetName/securityGroupId fields from the region object during provider editing. PLAT-14802
  • Corrects the retrieval of autoflags from the target universe, ensuring tserver autoflags, not master autoflags, are compared during backup procedures. PLAT-13161
  • Marks useIMDSv2 as deprecated at the provider level and moves it back to AWS cloud info. PLAT-13482
  • Updates YBC client and server versions to 2.1.0.0-b9, removing an error condition for multiple master leader addresses and enhancing Java client's resilience to short network outages. PLAT-13529
  • Now correctly reads inherited provider level runtime config values on Universe Form, enhancing geo-partitioning functionality. Fixes a bug with incorrect readings if values were not set at the provider level. PLAT-13606