What's new in the YugabyteDB Anywhere v2.20 LTS release series

Release announcements

Release notes

What follows are the release notes for all releases in the YugabyteDB Anywhere v2.20 series. Content will be added as new notable features and changes are available in the patch releases of the YBA v2.20 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.

Technical Advisories


Index update can be wrongly applied

Impacts: v2.20.0.0 to 2.20.1.2

The impacted releases contain an issue where an index update can be wrongly applied, leading to index corruption in the following rare cases:

  • Update to a table with non-unique indexes and self-referential triggers where both the index updates, and the trigger application affect the same rows.
  • Multi-row update to a table with a non-unique partial index.

For more information, see #20648.

If you're using a v2.20 series release prior to v2.20.1.3, it is recommended that you upgrade to YugabyteDB 2.20.1.3 or later.

Correctness issue for queries using SELECT DISTINCT

Impacts: v2.20.1.0 to 2.20.1.3

The impacted releases contain a correctness issue for queries using SELECT DISTINCT clause. The queries may return incorrect results when the following conditions are true:

  • BatchNestedLoopJoin is enabled.
  • JOIN clause is present in the query.
  • DISTINCT clause is present in the query.
  • Table has range indexes.

For more information, see #20827.

v2.20.4.0 - May 23, 2024

Build: 2.20.4.0-b50

Third-party licenses: YugabyteDB, YugabyteDB Anywhere

Download

New Releases

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
  • Introduces more comprehensive replicated migration settings and rectifies a restart bug, ensuring systemd unit changes are recognized. PLAT-13330,PLAT-13331,PLAT-13339
  • Introduces an alert for clock synchronization failures, enhancing the existing health check features. PLAT-9544
  • Allows periodic copying of core dumps to a designated volume by a background thread, enhancing dump management strategy. PLAT-12633
  • 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
  • Adds ikeep to the XFS mount options to mitigate possible key duplication in the block cache. PLAT-13192
  • Supports launch of IMDSv2 enabled nodes in AWS. PLAT-12482

Bug fixes

  • Activates VM_OS_Patching runtime flag by default for managing OS patching. PLAT-10551
  • Refactors EditUniverse for code simplicity and incorporates backported changes from the replace node to 2.20. PLAT-11267
  • Enables running SQL queries against specific YugabyteDB nodes via API, now manually enabled for safety. OSS mode removal done due to functionality issues. PLAT-12013
  • Bypasses clock sync check on a node if chronyc is not installed. PLAT-13137
  • 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
  • Increases the number of debug statements during the LDAP-YBA synchronization task, enhancing troubleshooting capabilities. PLAT-13487
  • Restricts SuperAdmin from logging in via Single Sign-On (SSO) to prevent conflicts in role assignments and modifications to global runtime configurations. PLAT-13499,PLAT-13555
  • 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
  • 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
  • Allows for consistent loading of the placement modal in the create universe form regardless of the selected provider. PLAT-13294
  • Fixes the issue causing failure in creating universe in on-premises tests. PLAT-13396
  • 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
  • Adjusts tab display in the UI to prevent hiding due to addition of xCluster Disaster Recovery and CDC Replication Slots tabs. PLAT-13678
  • Fixes inconsistency in auto-generated YBA bundles, enabling correct default configuration when YBA version is bumped for AMI. PLAT-13796
  • Integrates critical preflight checks into all main tasks to verify absence of leaderless tablets before any placement or upgrade operation. PLAT-10626
  • Ensures database state matches Yugabyte Platform's expectations before initiating key operations, through repeated verifications for unexpected masters or tservers and master leader presence. PLAT-11885,PLAT-10402
  • Increases default OOM score of Prometheus service for enhanced stability in low-memory situations, the value can be customized by the user. PLAT-12019
  • Eliminates the option to edit xCluster config name through the YugabyteDB Admin (YBA) user interface to avoid tables remaining in "Unable to Fetch" status after renaming replication. PLAT-12555
  • Allows adding tables to bidirectional replication by skipping bootstrapping every time, regardless of necessity. Now, responsibility lies on the user to copy existing data. PLAT-12834
  • Allows raising universe level alerts when the YBA Node Agent is down for over a minute. PLAT-12835
  • Shifts the useIMDSv2 field from AWS cloudinfo to the ImageBundle details for better provider creation payload configuration. PLAT-12967
  • Allows CertsRotate task to retry, ensuring the subtasks are idempotent. PLAT-13280
  • 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
  • Alters the jsonPath mapping for sshPort fitting all the provider validations, adjusting it to map to $.imageBundles[i]. instead of $. to accommodate the relocation of sshUser and sshPort to image bundle details level. PLAT-13392
  • 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
  • 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
  • Adds a separate tooltip message for the configure replication button disabled due to an unavailable (paused or pending) universe. PLAT-13515
  • Links to public documentation are now available in the confirm replication lag alert step during the Disaster Recovery (DR) configuration process. PLAT-13547
  • 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
  • Allows usage of the sshUser configured in the provider when machineImage parameter is used during universe creation, reducing failures in custom AMI cloud cases. PLAT-13632
  • Allows manual backups on HA standby nodes without interfering with the node's later promotion to primary. PLAT-13683
  • Fixes an issue that caused data from newer backups to be wrongly restored during the restoration of older backups. PLAT-13905
  • 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
  • Displays error when a selected zone doesn't contain any available nodes during universe configuration. PLAT-12959
  • Resolves parsing error in memory_limit_bytes logic, enabling accurate suffix string matching and allowing floating point values for tServer resources. PLAT-12960
  • 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
  • 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
  • Resolves the issue of universe creation failure due to incorrect Image Bundle UUID by using the specified ec2-user. PLAT-14004

v2.20.3.1 - May 14, 2024

Build: 2.20.3.1-b2

Third-party licenses: YugabyteDB, YugabyteDB Anywhere

Download

This is a YugabyteDB-only release, with no changes to YugabyteDB Anywhere.

v2.20.3.0 - April 9, 2024

Download

Use v2.20.3.1 or later.

New features

  • Migrate from Replicated to YBA Installer. Ability (for current customers who previously installed YBA using Replicated) to migrate to the improved YBA Installer for upcoming upgrades. The new installer offers enhanced speed, simplicity, and robustness. Note that Replicated will reach its end-of-life by the conclusion of 2024. Users are recommended to migrate to the YBA Installer before this deadline for a smoother transition. PLAT-8364
  • Task Retryability for VM-based universes. You can now address the cause of a failure for a complex operation and retry. For example, if adding nodes to a universe fails due to a cloud quota limit, you can fix the quota issue and retry the task. PLAT-6141
  • Delphix integration. Delphix now officially supports YugabyteDB for its database virtualization and data masking solutions.
  • Commvault integration. Commvault officially supports backup and restore of YugabyteDB.
  • Automated OS Patching and upgrades for public cloud. With just a few clicks, you can non-disruptively upgrade your Linux OSs to the latest security patch levels, or even to newer or different Linux OSs. PLAT-9012
  • Asymmetric Network proxy settings. For a given universe, network proxy settings can now be specified at per region granularity (rather than per universe granularity). This is beneficial in multi-cloud universes to, for example, send backups to a single cloud bucket. EA PLAT-12604

Improvements

  • Support to directly specify images in Azure provider. PLAT-12814
  • Adds new alert templates: INCREASED_REMOTE_BOOTSTRAPS, TABLET_SERVER_AVG_READ_LATENCY, TABLET_SERVER_AVG_WRITE_LATENCY, REACTOR_DELAYS, and RPC_QUEUE_SIZE to YBA. PLAT-12236
  • Simplifies the generate script and rectifies failures in the testcomplexops-aws-arm case by updating Alma8 AMIs with new GPG key, beneficial for installing new packages on ARM. PLAT-12855
  • Introduces an adjustable 1-minute delay to AutoFlags promotion before undertaking any other action. PLAT-13139
  • Introduces VM OS upgrade adjustments and related fixes to enhance universe creation page functionality. PLAT-11482
  • Allows YBA node agent installation as a non-root user in a custom tmp directory to reduce the list of commands in the sudo whitelist. PLAT-12635
  • 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

Bug fixes

  • Now allows for custom replication lag alert configurations outside of modal with the user-set maximal threshold, eliminating risk of UI page blanking. PLAT-12463
  • Ensures "Welcome to YB" modal dialog doesn't reappear after users choose not to display it again. PLAT-12711
  • Fixes a syntax error in Reactor Delay Alert that was causing Prometheus to crash. PLAT-12777
  • Ensures correct setting of installRoot config values for a smooth replicated migration process by adding a validation check before starting the migration. PLAT-12785,PLAT-12784
  • Corrects minor error in Reactor Delays Alert Description for better alert understanding. PLAT-12825
  • Enables permanent blacklisting of removed nodes to prevent tablets from moving back, enhancing data allocation control. PLAT-13045
  • Restores access to the api_token endpoint on HA followers for pre-existing customer automation, mitigating potential usage difficulties. PLAT-13274,PLAT-13269,PLAT-13267
  • Fixes issues with node remove/release action failure in test cases, enhancing system stability. PLAT-12948
  • Allows admins to prevent privilege escalation by disabling the ability to manually create SuperAdmin users or change existing roles to SuperAdmin via PUT requests. PLAT-10470
  • Integrates the DR metrics panel into the existing tab panel array, correcting index issues and making all sub metrics tabs accessible on the user interface again. PLAT-12771,PLAT-12779
  • Allows disabling the environment proxy selector to circumvent IPv6 parsing issue. This can be done using an environment variable or configuration parameter. PLAT-12810
  • Disables environment proxy selector for IPv6-only scenarios due to improper IPv6 address handling, offering a short-term fix. PLAT-12810
  • Enables idempotent mv command usage across file systems during replicated migration, addressing failure issue when root install directory exists on a different file system. Also resolves minor logging issues. PLAT-12836
  • Sets the minimum required TLS version for node-agent server to 1.2, addressing flagged vulnerabilities related to accepting lower TLS versions. PLAT-12883
  • Preserves the node-agent folder during instance cleanup for on-premises nodes. PLAT-12896
  • Enables successful pause/universe function even when disks are not mounted by UUID by correctly utilizing the host_info parameter. PLAT-12911
  • Allows for consistent loading of the placement modal in the create universe form regardless of the selected provider. PLAT-13294
  • Introduces a pre-check for removeNodeFromUniverse to avoid removal failures, includes a new runtime config yb.always_wait_for_data_move, and ensures waitForDataMove always executes to prevent data loss. PLAT-10522
  • Refactors the StartNodeInUniverse task to accommodate new task freezing changes and include a pre-check for the start node. PLAT-10881
  • Logs the highest follower lag for a specific server and associated tablet id, aiding in debugging when threshold checks pass. PLAT-11236
  • Updates both -classic and -core Java packages in your home library to version 1.2.11 for more advanced capability. PLAT-11662
  • Shifts to Play 3.0.x, leveraging Pekko to mitigate vulnerabilities in the latest Akka library. PLAT-11680
  • Skips the CheckNodeSafeToDelete subtask for delete read replica clusters ensuring quicker deletion process. PLAT-12242
  • Simplifies usage by combining lockUniverseForUpdate and lockForFreezeAndUpdate. Removes redundant helper methods and optimizes lockUniverseCanUpdate functionality. PLAT-12342
  • Introduces pre-checks to verify DB/OS compatibility based on glibc version during node creation/editing or software upgrade starting from YBA 2.20. PLAT-12457
  • Enables index table support in the non-transactional xCluster edit table which eliminates the need for restart replication when adding tables. PLAT-12472,PLAT-11801,PLAT-11853
  • Enables a new Error state for disaster recovery configurations, disabling all operations except deletion if creation or replica replacement fails. Updates Yugabyte platform UI to reflect these changes. PLAT-12473
  • Updates terminology and error messages related to DR and xCluster. The term DR changes to "xCluster DR" and xCluster now implies "xCluster replication". Rectifies issues with the XCluster/Replication pop-up and how databases are selected during DR config setup. PLAT-12682,PLAT-12698,PLAT-12601
  • Ensures seamless removal of down on-prem nodes by not failing stop processes and by reducing the node-agent time wait. Avoids unnecessary node reboot for on-prem nodes. PLAT-12712
  • Ensures that the masterState is not cleared if the current task isn't a placement modification task, maintaining temporary universe states for retry. PLAT-12713
  • Enhances user experience by adding more success notifications upon request fulfillment and correctly communicates changes to DR replicas. PLAT-12743
  • Increases the speed of list tables by utilizing the indexedTableId field for mapping index and main tables, significantly reducing execution time in newer database versions with xClusterOnly set to true. PLAT-12786
  • Prevents xcluster creation failure due to unsupported autoflags in universes, enabling smoother creation and renaming of xcluster replications even with older db versions. PLAT-12788
  • Enables re-execution of similar rolling operation tasks, including changes in Gflags, instance type, and AMI restarts. PLAT-12797
  • Allows specific time-out for retries on UNAVAILABLE or RESOURCE_EXHAUSTED when stopping a node from YBA, preventing long wait times if the Node Agent is down. PLAT-12800
  • Corrects the deletePitrConfigs parameter setting to accurately delete PITR configurations on old standby universe during a switchover. PLAT-12854
  • Allows using AZ UUID, instead of AZ name, and prevents deletion of nodes in reserved state to ensure uniqueness across regions when starting a new master. PLAT-12886
  • Corrects an issue where sshPort value could be overridden to null, ensuring compatibility with Custom-AMI during universe creation. PLAT-12946
  • Allows specifying the correct sshPort in the nodeUniverseManager to prevent universe creation failure in all custom AMI cases, ensuring smooth operation. PLAT-12946
  • Updates existing documentation links on the YBA Disaster Recovery interface to direct to new pages. PLAT-12979
  • Enables root mount retrieval for manually provisioned on-prem nodes using node-agent, even when a different user is specified. PLAT-12984
  • Allows individual index table selection for xCluster replication and xCluster DR. If autoIncludeIndexTables is enabled, relevant index tables are added to user's table selection. PLAT-12985
  • Allows disabling of the wait for clock sync check on a universe scope, enhancing compatibility with chrony-disabled NTP-only systems. PLAT-13027
  • Includes Disaster Recovery (DR) tasks in the SAFE_TO_RUN_IF_UNIVERSE_BROKEN list. PLAT-13035
  • Displays correct read replica node details in the universe overview page, rectifying the previous issue of displaying primary cluster information. PLAT-13054
  • Displays View Universe option for checking user configuration of the created universe, including primary cluster and any existing read replica. Offers an alternate to edit workflow for universe viewing. Also fixes a problem where clicking Details Link in Read Replica on Universe Overview Page caused error. PLAT-13055
  • Enables successful backup creation of YCQL tables from the tables page by resolving the Failed to parse BackupRequestParams error. PLAT-13056
  • Allows root user to run Node-Agent installer without sudo command and fixes NTP Clock Sync health check failure on Amazon Linux 2 CIS hardened image. PLAT-13080,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 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
  • Allows editing in-use providers by default via the edit_in_use_provider runtime config flag. PLAT-13187
  • Checks bootstrap requirement only for newly added tables in replication, reducing redundancy and ensuring accurate bootstrap checks. PLAT-13195
  • Eliminates unnecessary bootstrap warnings when users only remove tables from replication, enhancing user experience by reducing confusion. PLAT-12481,PLAT-13195
  • 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
  • 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
  • Introduces a runtime configuration wait_for_server_ready.timeout that replaces the static 10-minute wait to cater to users with a massive number of tablets requiring extended local bootstrap time. PLAT-8632
  • Enables waiting for clock sync before restarting tserver or master process following an out-of-band reboot. Can be disabled by setting yb.wait_for_clock_sync.inline_enabled to false. Effectively manages clock skew. PLAT-9452
  • Adds a pre-check to ensure a node's safety before its release or deletion, by verifying it has no remaining tablets and is not part of the master quorum. PLAT-9504,PLAT-11231
  • Blocks adding a new instance type with an existing name in the Add instance type modal to avoid unintentional edits in the on-prem provider. PLAT-12641
  • 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
  • Disables use of IAM Profile for non-AWS YugaByte Platform deployments, preventing task failure. PLAT-12181
  • Allows re-triggering of configure db APIs tasks even if a prior task failed after a password reset during authentication disabling. PLAT-12676
  • Removes non-existing tables from selection and subtracts selected index table count to ensure accurate database and table count, improving the user interface's clarity during replication configuration. PLAT-12754
  • Allows for configuration database tasks to be conveniently aborted. PLAT-12803
  • Upgrades the yba-installer to PostgreSQL version 14.11. PLAT-12878
  • Corrects the retrieval of autoflags from the target universe, ensuring tserver autoflags, not master autoflags, are compared during backup procedures. PLAT-13161
  • 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

v2.20.2.2 - April 1, 2024

Build: 2.20.2.2-b1

Third-party licenses: YugabyteDB, YugabyteDB Anywhere

Download

Bug fix

  • Grants access to the api_token endpoint from HA standby, easing difficulties for customers with existing automation that previously relied on this access. PLAT-13267,PLAT-13268

v2.20.2.1 - March 22, 2024

Build: 2.20.2.1-b3

Third-party licenses: YugabyteDB, YugabyteDB Anywhere

Download

Bug fixes

  • Resolves parsing error in memory_limit_bytes logic, enabling accurate suffix string matching and allowing floating point values for tServer resources. PLAT-12960
  • Allows disabling of the wait for clock sync check on a universe scope, enhancing compatibility with chrony-disabled NTP-only systems. PLAT-13027
  • Enables idempotent mv command usage across file systems during replicated migration, addressing failure issue when root install directory exists on a different file system. Also resolves minor logging issues. PLAT-12836
  • Corrects the retrieval of autoflags from the target universe, ensuring tserver autoflags, not master autoflags, are compared during backup procedures. PLAT-13161

v2.20.2.0 - March 4, 2024

Build: 2.20.2.0-b145

Third-party licenses: YugabyteDB, YugabyteDB Anywhere

Download

New features

  • Nutanix Ready. YugabyteDB and YugabyteDB Anywhere has been certified to be compatible as part of the Nutanix Ready AHV program.

  • Automated Linux OS patching and upgrades for on-prem. You can now use safety-improved YugabyteDB Anywhere APIs when automating your rolling patch scripts for Linux OSs (typically, for OS security, and minor or major OS upgrades). PLAT-10591, PLAT-10988

  • REST API versioning and clean-up. REST API simplification and streamlining for most important APIs. PLAT-11133

  • Improved Auth when using GCS for backups for Kubernetes universes. When taking backups of a Kubernetes universe to Google GCP, allow use of the Google GKE's Service Account for authentication to the Google Storage. PLAT-10571

  • Asymmetric nodes in each region (API support only). In a stretched cluster, nodes in each region can now have different instance types (that is, different number of CPU cores, memory, and so on).

  • Task Retryability for VM-based universes. You can now address the cause of a failure for a complex operation and retry. For example, if adding nodes to a universe fails due to a cloud quota limit, you can fix the quota issue and retry the task. EA PLAT-6141

  • Backup portability. After sending backups to a cloud object store (such as S3, GCS, or Azure blob storage), you can now copy those backup sets to other cloud storage buckets and restore from them. EA PLAT-10179

  • xCluster DR. A turnkey solution for business continuity and disaster recovery, allowing you to recover from an unplanned outage (failover) or to perform a planned switchover. EA

  • Edit universe providers. You can now add and remove regions and change service accounts for providers with active universes.

Improvements

  • Re-implements master operation completion checks using ListMasters or ListMasterRaftPeers, enhancing ChangeMasterConfig finish evaluations and refining local provider tests. PLAT-10162
  • Allows backups to be restored from a different bucket in the same or another cloud, removing the preflight check that compared buckets from backup metadata and the provided bucket during restoration—only constraint being all relative directories inside the bucket remain unchanged. PLAT-10179
  • Modifies the follower lag check to use the node endpoint instead of Prometheus metrics, ensuring more accurate assessment even if Prometheus is down. Introduces a new runtime config, follower_lag.max_threshold, for customising lag allowance. This change notably enhances upgrade processes and mitigates false positive scenarios. PLAT-10286
  • Allows removing the kube config and pull secret file from Kubernetes providers configurations without needing a replacement. PLAT-10348
  • Suppresses partial data deletions and enhances predictability by disabling the callback when a master is removed, and instead, lets YBAdm to properly clean out the state on add master. PLAT-10401
  • Enables the master_join_existing_universe flag for existing VM universes, replacing cluster configurations atomically for a seamless transition. PLAT-10511
  • Rearranges the xCluster table listing based on severity of status in reverse order for GET xClusterConfig and GET DrConfig endpoint for better visibility. PLAT-10580
  • Enhances upgrade task retryability and introduces a two-phase universe lock, allowing validations to be run between lock and freeze stages, thus improving task recovery efforts and stability. PLAT-10701,PLAT-10705
  • Introduces universe name and zone labels to DB pods and other resources established by YBA, dramatically aiding the creation of a shared load balancer service across multiple AZs, and offering smoother integration with automation systems. PLAT-10591,PLAT-10988
  • Allows configuration of the aggregate query aggregator and maintains consistent query granularity when dealing with topk/bottomk situations. PLAT-11026
  • Enables adding sharedVPCProject ID via the YBA UI for GCP providers, replacing the older GCP project name field. Now, users can specify two projects at a time: Shared VPC Project for VPC shared environment and GCE Project for project where VM will be provisioned. PLAT-11065
  • Limits the ::log-bundle command to capturing logs from the last day for long-running YBA instances, enhancing running time and reducing hang periods. PLAT-11220
  • Updates Node Exporter from 1.6.1 to 1.7.0, addressing previous golang vulnerabilities and enhancing overall security. PLAT-11234
  • Enables the ability to control container level resources within a pod using overrides, particularly for YBC and other containers in the tserver pod. PLAT-11323
  • Enhances the Task Page by directly fetching universe-specific tasks, removing unnecessary client-side filtering. PLAT-10194,PLAT-11404
  • Allows smoother volume expansion by ignoring errors when enlarging PVC, continuing with STS recreation process, and finally throwing an exception if the actual volume isn't of desired size. PLAT-11454
  • Regenerates server certificates automatically on hostname changes to maintain high availability, initiated by running yba-ctl reconfigure, enhancing HA workflow stability. PLAT-11525
  • Updates the s3cmd tool to the latest version 2.3.0, ensuring compatibility with AlmaLinux 8+ and other newer Linux distributions. PLAT-11559
  • Fixes incorrect java non proxy config schema. PLAT-11568
  • Allows LDAP sync operations to use GFlag values as fallbacks for key settings, redacts sensitive information like password in application logs, permits LDAP sync with any role having superadmin privileges, ensures created groups lack superadmin status or login permissions. PLAT-11595
  • Introduces an unauthenticated API endpoint for detecting if a YBA instance is the primary in an HA setup, facilitating load balancing. PLAT-10557,PLAT-11598
  • Blocks non-GET API requests on HA followers to prevent accidental universe creation or modification. API access for necessary functions still maintained. PLAT-11617,PLAT-11256
  • Expands version check compatibility across different settings of older Replicated versions and disables rollback during Replicated migration if it includes a YugabyteDB version change to ensure safety. PLAT-11630
  • Disables the edit button on runtime configurations for non-super admin users ensuring only super admin users can modify these configurations. PLAT-11667
  • Offers two new Jupyter notebooks for xCluster and dr APIs, makes bootstrapParams an optional field in set_tables API, and standardizes the use of bootstrapParams across different APIs. PLAT-11678,PLAT-11618,PLAT-10622
  • Enables the Add Read Replica button. Allows creation of Read Replica even without the UNIVERSE.CREATE permission. PLAT-11691
  • Augments the Edit Backup API's permission requirement from OTHER.READ to OTHER.UPDATE for more secure alterations, including retention period changes. PLAT-11715
  • Ensure that built-in YBA SA RBAC has all the roles in platform-global RBAC. PLAT-11716
  • Refactors the lock and freeze pattern for universe tasks to ease use, incorporating changes such as consolidating force lock and normal update lock, validating lock status on task submission, and enabling forced task abortion with permitted force deletion. PLAT-11769
  • Expands xCluster support for colocated tables, introducing backend API changes for effective replication. This enhancement includes a new type of table - the colocated parent table, several updated functions for table handling, improved filtering methods, size information handling for child tables and xCluster replication for colocated tables. Also ensures a user-friendly presentation of the colocated parent table. PLAT-11770
  • Ensures LDAP groups mapped as DB users are not super admin, no login permissions PLAT-11776
  • Introduces a new software upgrade API to facilitate rollback support and minimize disruption for existing users. This alteration transitions upgrading software from a single task to a two-task process (upgrade and finalize), subsequently changing API availability from 2.21.0.0 to 2.20.2, and incorporating unit tests. PLAT-11480,PLAT-11792,PLAT-10829
  • Introduces a new runtime config is_bootstrap_required_rpc_pool.max_threads, enabling users to dictate the maximum thread pool size for isBootstrapRequired rpc calls. PLAT-11841
  • Allows storage configuration to be saved at the Disaster Recovery (DR) level, eliminating the need for specifying bootstrap parameters with each API call, and prevents removal of a storage config used by the DR config. PLAT-11844
  • Allows direct editing and configuration of automated Disaster Recovery (DR) backup storage in the YugabyteDB Admin User Interface (YBA UI). Skips step of user input for backup storage configuration. PLAT-11845
  • Increases stability during replicated migration by setting the HA prometheus config directory explicitly and blocking migration from yba-ctl when both HTTP/HA are enabled. PLAT-11785,PLAT-11849
  • Introduces a dynamic user interface in DB rollback upgrade that appropriately enables or disables certain controls based on various states. The upgrade button is now disabled when a database is pending an upgrade, and the ability to select a currently active version for upgrade is disabled. The time delay box gets disabled if the rolling upgrade is unchecked. Additionally, includes a feature to automatically update the universe's state after upgrade, rollback, finalize, or retries without refreshing the page. PLAT-11614,PLAT-11600,PLAT-11334,PLAT-11333,PLAT-11633,PLAT-11734,PLAT-11772,PLAT-11601,PLAT-11888,PLAT-11336,PLAT-11332,PLAT-11536,PLAT-11866
  • Streamlines the on-prem setup workflow, eliminating the need to stop, remove, reinstall, and restart the node-agent when changing providers—instead, run the configure command, remove, and add back. Enhances error messages if a script fails to download and introduces a bind address for the node agent when using DNS for node IP. Conceals potentially confusing server commands and permits node-agent un-registration even with wiped-out data. Only manually provisioned on-prem providers will be fetched, improving clarity, and supports the use of non-Yugabyte users with provision_instance.py. PLAT-11889
  • Introduces a runtime configuration yb.node_ops.leader_blacklist.fail_on_timeout that, when enabled, causes the StopNodeInUniverse operation to fail if leader blacklisting doesn't complete in the set timeout. PLAT-11892
  • Allows correct editing of the RR cluster configuration, ensuring that all nodes remain in the node details set during any increase or decrease in node count, while maintaining appropriate data consistency across different locations. PLAT-11921
  • Maintains access to replicated's and self-signed certificate files post full migration, for reference. PLAT-11968
  • Enhances readability of built-in Role descriptions in the User Interface by adjusting the Role table column and adding a hover-over feature for full content visibility. PLAT-11972
  • Sends universe name and version alongside uuid during finalize, reducing redundant API calls on the UI. PLAT-11981
  • Directs users to the alert configuration page for managing replication lag alerts and renders alert thresholds on metric graphs. Also, updates bootstrap terminology to full copy in the YBA UI and enhances the failover and switchover modal texts for clarity. It further adjusts the endpoints in the ApiAndUserPermMapping.ts and includes the RbacValidatorcomponent to support new DR API operations. PLAT-11987,PLAT-10138,PLAT-11664
  • Disables edit operations for universes with asymmetric clusters on the YBA UI to prevent loss of AZ level overrides and moves the geo-partitioning feature flag from the /features page to a provider level setting, allowing creation of symmetric geo-partitioned universes. PLAT-12003
  • Allows immediate promotion of autoflags during Universe upgrades and deletions without version-related delays, improving Database Management Service performance. PLAT-12030
  • Updates the Disaster Recovery (DR) user interface, making various layout adjustments, modifying relevant modal text, adjusting backup storage configuration width for enhanced option visibility, adding a divider on all YBModal headers, and revising toggle button background color. Additionally, direct links to relevant help resources are now opened in a new tab to prevent information loss during DR configuration. PLAT-12039
  • Stabilizes the CreateBackupSchedule task page by adding a subtask group type to prevent unwarranted state changes, enhancing user interaction with the task progress bar. PLAT-12055
  • Introduces alerts for YSQL/YCQL webservers, enhancing YBA's health monitor to keep an eye on 9070, 9300, and 13000 ports. PLAT-12067
  • Incorporates version information in the finalization of upgrade tasks and adds completion time in task status API. PLAT-12071
  • Enables changing yba-installer to switch from self-signed CA signed certificates. PLAT-12100,PLAT-12045
  • Enables alteration of default storage configuration or parallelism via POST {{base_url}}/customers/{{customer_uuid}}/dr_configs/{{dr_config_uuid}}/edit API endpoint. PLAT-12203
  • Enables multiline environment parsing in the node agent. Environmental values can span multiple lines. PLAT-12220
  • Upgrades the paramiko version to 3.4.0, addressing previous security vulnerabilities, enhancing protection for your database. PLAT-12337
  • Upgrades Python Cryptography package to version 41.0.7 and Python Pycryptodome package to 3.20.0, enhancing security by addressing previous vulnerabilities. PLAT-12338
  • Enables adjustment of memory limit calculation using k8s overrides, providing more control over memory limits for master and Tserver on a per pod basis by no longer being hardcoded to 85%. PLAT-12364
  • Allows to configure cross-cluster setup/alter wait time, and extends the default timeout from 5 to 15 minutes. PLAT-12427
  • Introduces separate timeouts for RPC calls and asynchronous tasks such as snapshots, using yb_api_timeout_secs and yb_task_timeout_secs respectively. Eradicates line variable overwrite issue by blanking out the line variable prior to reading the next message and finally adjusts coprocess operation to start and stop only when necessary. PLAT-12483
  • Allows cross-cluster replication support for colocated tables, ensuring safer usage, while preserving old behavior if the database doesn't return colocated information. PLAT-3748,PLAT-11886
  • Ability to recover from failed operations such as universe growth, shrinkage, or modification, in the Kubernetes (K8s) environment by employing a retry mechanism, eliminating the need to contact support. Note that failures attributed to external factors, such as insufficient permissions or resources, should be addressed and resolved before initiating a retry. PLAT-8420
  • Allow InstallYbcSoftwareOnK8s and UpdateKubernetesDiskSize.java tasks to be abortable and retriable for higher reliability during rolling restart of Pods for Kubernetes Universe or YBC upgrade. PLAT-8425,PLAT-8426
  • Allows users to disable the scraping of Kubernetes node metrics, that show CPU, memory, and disk utilization graphs for Kubernetes-based universes, with a new Prometheus flag. PLAT-9097
  • Incorporates user interface for Disaster Recovery (DR) management in YBA, protected by a feature flag, allowing creation, editing, and deletion of DR configurations. Utilize a new DR API and replace generic config names with a unique, user-friendly naming system, based on word dictionaries. Featuring management of failover, switchover, and DR states alongside additional presentation of info such as universe regions in the DR tab. Note the DR UI is off by default and needs enabling via the runtime config. PLAT-10982,PLAT-11103,PLAT-10745,PLAT-11192,PLAT-9756,PLAT-10984,PLAT-10283,PLAT-10170
  • Enables finalizing upgrades during monitoring phase, upgrading YSQL and promoting autoflags up to class kExternal. PLAT-9993,PLAT-11775
  • Allows for the rollback of both DB upgrades and universe software upgrades, fixing issues with AutoFlags, universe state assignment, and software upgrade state updates, while also updating the UI for better upgrade finalization processes. PLAT-11070,PLAT-11212,PLAT-11544,PLAT-10973,PLAT-10974,PLAT-11366,PLAT-11332,PLAT-10971,PLAT-11253,PLAT-9995
  • Enables the capacity to rollback after a phase 1 upgrade and store upgrade history, including the restoration of auto-flag config through yb-client API. PLAT-11774,PLAT-9994,PLAT-9999,PLAT-11728,PLAT-9997,PLAT-11817
  • Enables retry for both CertsRotate and systemd upgrade tasks.
  • Enhances the performance and speed of the UI, especially for xCluster configs with thousands of tables by using a single query to the /metrics endpoint for async_replication_sent_lag. PLAT-12439
  • Enables support for AWS IMDSv2 during AWS provider creation PLAT-12482
  • Change the order of node-agent installation and node provision in provision_instance.py for onprem. PLAT-12533
  • Adds a checkbox option to the DR configs UI, enables force deletion and to bypass any errors related to manual stream deletions. PLAT-12535
  • Revamps the repair DR config modal to eliminate excessive network requests and enhance speed by allowing a restart even with an empty dbs field, effectively interpreting it as a restart for all tables in the config; switches from the restart xCluster config request to a dedicated DR config API, and adopts the set table API for efficient drop table operations in DR context. PLAT-12554
  • Allows Point-in-Time Recovery (PITR) to be deleted when deleting the universe, removing the Disaster Recovery (DR) configuration, replacing the replica, or during switchover and failover; only for transactional and DR cases. PLAT-12560
  • Introduces a new Error state for disaster recovery (DR) configurations, enabling users to manage config failures more effectively. If a DR creation or replace replica operation fails, the Error state is triggered. In this state, existing DR configurations can only be deleted, with all other operations disabled. This update also reflects in the YBA UI and disables restart replication if a DR is not in a stable state. PLAT-12473,PLAT-12585
  • Regenerate pex venv if the python version changes to ensure compatibility. PLAT-12618
  • Resolves the hanging issue during pg_ctl start by consistently clearing the conf directory during reinstallation while maintaining its state during a soft clean. PLAT-12620,PLAT-12597
  • Enables the edit DR configuration button for halted Disaster Recovery (DR) configurations, allowing safe edits of backup storage settings even in a halted state.
  • Enables IMDSv2 and the userIMDSv2 field to the cloudInfo payload in AWS provider creation. PLAT-12708
  • Removes caching for Azure ultra disks to handle Azure-specific limitations, ensuring successful create universe processes. PLAT-12681,PLAT-12722
  • Updates to UI elements related to xCluster and DR, error messages, moves DR metrics link to a separate tab, and fixes issues with DR configuration and metrics UI access.
  • Resolves the issue of pause/resume failures when universe disks are not mounted by UUID,.

Bug fixes

  • Stops and deletes the YBC process running on nodes in AddOnClusterDelete, EditUniverse, and ReadOnlyClusterDelete workflows and cleans up the YBC directories, enhancing the on-prem universe management. PLAT-11056
  • Corrects the issue in the Restore History tab where a failed restore status incorrectly displays as Backup Failed. PLAT-11489
  • Displays Universe status as ERROR when critical operations have failed on the universe. PLAT-11575
  • Corrects issue in custom date picker in the create support bundle where start and end dates were getting swapped. PLAT-11603
  • Enables access to Dashboard and Universes page with super admin user in version 2.21.0.0-b266. PLAT-11649
  • Resolves the issue of Universe overrides not being applied and issue with non-rolling gflags upgrade. PLAT-11672,PLAT-10289
  • Ensures switchover is possible only when all tables in a database are part of the xCluster config and fixes status update issue on xCluster config restart without bootstrapping. PLAT-11778
  • Allows successful retries for Edit Universe in Kubernetes universes. Accounts for cases where ChangeMasterConfig arises for nodes already removed, ensuring continuous execution. PLAT-11805
  • Introduces a timeout and retry mechanism to handle helm timeout issues observed during retry testing. Ensures resilient Kubernetes command execution. PLAT-11805
  • Corrects disk usage graph display for multi-volume on-premise universes by rectifying the Prometheus expression that queries disk usage. PLAT-11813
  • Prevents a Kubernetes universe from freezing by rectifying upgrade task failure during the pre-check stage. PLAT-11867
  • Allows new YB-TServers created after adding new AZs to have the YBC running, ensuring smooth AZ migrations by correcting the tserver specification during master partitioned rolling updates. PLAT-11919
  • Handle long shebang lines in PEX playbook invocation path. PLAT-11938
  • Allows for accurate Prometheus data restoration during a replicated migration by correctly identifying the target directory. PLAT-11964,PLAT-11967
  • Eliminates the issue of leaving tserver pods in an orphaned state during retry operations by adjusting the ResizeDisks tasks to recreate statefulsets on a retry, enhancing reliability for disk resize operations. PLAT-11974
  • Enables proper migration of some replicated string settings to yba-installer, enhancing user experience by ensuring correct replication of settings. PLAT-11985
  • Reduces the default application logging level from TRACE to DEBUG to enhance performance, prevent costly operations and ensure practical production use. PLAT-12020
  • Fixes the isYsqlAuthEnabled function in userIntent to correctly process specific gflags rather than relying on the now obsolete tserverGflags. PLAT-12066
  • Fixes universe failure when creating a new universe on 2.20.1 via YBA API. PLAT-12093
  • Fixes rolling restart operation to be retriable. PLAT-12124
  • Allows login from either api/v1/login or api/login endpoints, enhancing itest/API access and user convenience, especially in the event of HA failover. PLAT-12154
  • Disables rollback options for universes updated from non-rollback support versions, ensuring compatibility with UI elements. PLAT-12157
  • Shifts metrics directory creation to the node provisioning step to ensure the right permissions, preventing potential disruptions in custom node metric collection. PLAT-12213
  • Eliminates the occurrence of blank pages in the Perf Advisor UI, covering a rare edge case, and enhances the UI response to various situations. PLAT-12214
  • Ensures correct and consistent time format on the task detail page, preventing unwarranted banners from showing during an upgrade-precheck failed state. PLAT-12246
  • Correctly display the YCQL P99 metric in yba-installer YBA installs. PLAT-12275
  • Corrects the handling of "zone 0" in AKS deployments, ensuring successful creation of multi-AZ clusters. PLAT-12307
  • Corrects the alert expression for master underreplicated alert, ensuring its functionality after being migrated to a YAML file. PLAT-12331
  • Fixes an issue with master autoflags during restore, ensuring backup restores don't fail due to incorrectly handling test autoflags. PLAT-12374
  • Resets access key update logic to respect user-provided skipProvisioning value instead of defaulting to false, preserving manual provisioning settings during on-prem provider edits. PLAT-12393
  • Resets provider usability state if edit task creation fails, preventing a perpetual Updating status even after error throw. PLAT-12396
  • Fixes an issue with maintaining types in the yba-installer configuration file during an upgrade. PLAT-12408,PLAT-12406
  • Ensures secure handling of passwords in QueryLDAPServer task by redacting bind_password and dbUserPassword in application log entries. PLAT-12423
  • Ensures immediate restore failure if storage configuration and backup location are from different cloud providers. PLAT-12444
  • Resolves a permission issue with the pexlock file. PLAT-12445
  • Clarifies the No tables selected error message for a Disaster Recovery config by enabling it to disappear when tables are selected, enhancing user interface experience. PLAT-12480
  • Allows YBA installer upgrades with existing custom Postgres by correcting the reconfig validation that previously prevented such upgrades. PLAT-12502,PLAT-12469
  • Prevents unnecessary retrieval of non-existent ImageBundle in onprem/k8s universe, fixing broken universe metrics upon enabling VM OS Patching. PLAT-12509
  • Resolves an issue where Create Schedule sub-tasks didn't run and the UI malfunctioned due to the parent task marking as successful while its percentage completion remained at zero. This fix ensures the smooth running of scheduled backup tasks. PLAT-12512
  • Allows successful editing of a read replica (RR) cluster even without primary cluster details in the request payload and appropriately handles volume sizing for the RR cluster. Also, optimizes the Edit Universe task to prevent early saving of user intent, boosting task performance. PLAT-11914,PLAT-6752,PLAT-10289
  • Adds support for shared VPC project in GCP providers. PLAT-9631
  • Allows the systemd units for yb-master and yb-tserver to always restart, regardless of exit codes, ensuring uninterrupted operation of these processes. PLAT-9737
  • Mitigates partial subtask failure by safeguarding against stop server tasks when YBDB software is deleted, enhancing the retry capability for EditUniverse. PLAT-10606
  • Prevent upgrades from getting stuck during YBC gflag upgrade operation, performs updates in a non-rolling fashion. PLAT-11198,PLAT-12158
  • Disables the edit provider form and region deletion for users without edit resource permissions. PLAT-12257
  • Handles the presence of an existing nvme1 mount in AWS to allow smoother universe creation. PLAT-12369,PLAT-12215
  • Adds disaster recovery (DR) error state in Yugabyte Platform's UI, halting all operations except delete upon failure. PLAT-12473
  • Clean up dangling stream ids after DR repair, when the initial primary universe was unreachable, before dropping the database. PLAT-12475
  • Ensures a full bootstrap is carried out during disaster recovery configuration repair after a failover, eliminating the risk of the older primary retaining obsolete changes. PLAT-12538
  • Resolves an issue with updating GCP providers configured prior to 2.16, by fixing the useHostVPC setting prevention which was causing update operations to fail. PLAT-12553
  • Eliminates a brief window during which writes were possible on an old primary during switchover, preventing replication lag and ensuring data consistency. PLAT-12584
  • Corrects error in the update_disk method to prevent the Resize node operation from failing on AWS, to ensure successful universe creation. PLAT-12645
  • Adds autoflag validation prechecks for disaster recovery processes and cross-cluster operations, ensuring autoflags promoted/modified on the primary are also changed on the standby. Introduces a runtime config enable_auto_flag_validation to toggle these checks. Addresses an issue tied to different DB versions and misaligned ysql_enable_packed_row autoflag states, preventing failure of disaster recovery setups. PLAT-12656
  • Addresses the issue in the EditUniverse workflow where an incorrect universe namespace selection led to a failed needsExpandPVC check, ensuring the correct azConfig use instead. PLAT-12658
  • Disables SSH key expiry alert uniformly. PLAT-12724
  • Fixes xCluster creation failures for non-supported autoflag universes by avoiding GetAutoFlagsConfig RPC call if the universe does not support autoflags. PLAT-12788
  • Addresses an IPv6 parsing problem. Enables disabling of the environment proxy selector via a configuration parameter or environment variable. PLAT-12810

v2.20.1.3 - January 25, 2024

Build: 2.20.1.3-b3

Third-party licenses: YugabyteDB, YugabyteDB Anywhere

Download

For instructions on installing YugabyteDB Anywhere, refer to Install YugabyteDB Anywhere.

Improvements

  • Update command version for an s3cmd variable s3cmd version. PLAT-11559

v2.20.1.2 - January 17, 2024

Downloads

Use 2.20.1.3 or later.

For instructions on installing YugabyteDB Anywhere, refer to Install YugabyteDB Anywhere.

This is a YugabyteDB-only release, with no changes to YugabyteDB Anywhere.

v2.20.1.1 - January 11, 2024

Downloads

Use 2.20.1.3 or later.

For instructions on installing YugabyteDB Anywhere, refer to Install YugabyteDB Anywhere.

Improvements

  • Allow changing from self signed to CA signed certs by regenerating server.pem on reconfigure. PLAT-12101,PLAT-12045

Bug fixes

  • Fixes rolling restart operation to be retriable. PLAT-12124
  • Fixes universe failure when creating a new universe on 2.20.1 via YBA API. PLAT-12093
  • Fixes create universe failure via YBA Installer installed on AmazonLinux2 by improving ansible-playbook in PEX. PLAT-12015,PLAT-11938
  • Fixes incorrect java non proxy config schema. PLAT-11568

v2.20.1.0 - December 27, 2023

Downloads

Use 2.20.1.3 or later.

For instructions on installing YugabyteDB Anywhere, refer to Install YugabyteDB Anywhere.

Highlights

  • Ability to limit user access to a subset of universes. With this enhancement, database administrators can independently manage designated universes, allowing for more granular control and division of responsibilities among DBAs. PLAT-7904 EA

  • Ability (for current customers who previously installed YBA using Replicated) to migrate to the improved YBA Installer for upcoming upgrades. The new installer offers enhanced speed, simplicity, and robustness. Note that Replicated will reach its end-of-life by the conclusion of 2024. Users are recommended to migrate to the YBA Installer before this deadline for a smoother transition. PLAT-8364 EA

  • New API call that synchronizes PG roles from a customer's Active Directory or LDAP, to enable securely authenticated and authorized access to database data. PLAT-9711

  • Ability to recover from failed operations such as universe growth, shrinkage, or modification, in the Kubernetes (K8s) environment by employing a retry mechanism, eliminating the need to contact support. Note that failures attributed to external factors, such as insufficient permissions or resources, should be addressed and resolved before initiating a retry. PLAT-11541, PLAT-8420

  • Safeguard to prevent the restoring of a backup of a newer version database to an older versioned (and therefore incompatible) YBA universe. PLAT-8162

  • Leverage the authentication capabilities of Google GKE's Service Account when taking backups of a Kubernetes universe to Google GCP. This streamlines the backup process, offering users the flexibility to authenticate seamlessly with Google Storage using their GKE Service Account. PLAT-10571

  • Official support and certification of Ubuntu version 22 for use with YugabyteDB Anywhere and YugabyteDB.

  • Minor correctness enhancement introduced when performing a complex Kubernetes operation such as universe growth, shrinkage, or modification. The task will now be marked successful only after successfully completing the operation, ensuring a more accurate status update compared to the previous behavior of marking it before completion. PLAT-10289

Improvements

  • Enables limited editing of in-use providers in the YBA UI, specifically beneficial for adding new regions, with a newly added runtime config to enable this feature. PLAT-10279
  • Enhances user experience by persisting universe user intent changes to database only after the completion of upgrade tasks, ensuring consistency between the platform and DB state and avoiding potential failures. The change affects GFlags upgrade, k8s overrides upgrade, and configures DB APIs operations. PLAT-10289
  • Boosts security by updating the YBA node agent and installer to utilize Go 1.21.3 compiler, patching multiple critical vulnerabilities. PLAT-11191
  • Upgrades node_exporter from the vulnerable 1.6.1 to 1.7.0 to enhance security PLAT-11234
  • Displays the count of tablet peers, including followers and leaders, in TServer on the metrics UI over time using a sum aggregation function. PLAT-11258
  • Updates Memtable metric names and adds migration script to ensure accurate data presentation on the master and on 2.20.0. PLAT-11315
  • Updates Akka version in YBA to 2.6.21, allowing Sink.asPublisher to support a single subscriber, consequently streamlining data flow management and maintaining stable operations. The update offers better performance and promises more robust architecture handling within the database. PLAT-11679
  • Allows addition of HSTS headers and other custom headers in API responses, enhancing security across portals espousing https and fulfilling customer requirements. PLAT-9109,PLAT-11546
  • Enables custom HTTP headers, including HSTS and other security-related headers, in API responses for Kubernetes-based deployments, catering to specific customer needs. PLAT-9109,PLAT-11546
  • Upgrades jackson-databind to version 2.15.3, addressing high security vulnerabilities, and elevates ehcache to 3.10.8, mitigating medium to critical susceptibilities. PLAT-9635

Bug fixes

  • Ensures smoother operation of the filtered_logs.sh script by adding quotes to the log filtering command, which prevents the system from splitting the search string into multiple words. PLAT-10321
  • Allows volume size decreases during Full Move in YBA (that is, after a modification to a universe that results in data needing to move from one node to another. Example: a change instance type operation with "full move" set to true) after setting allow_volume_decrease to true, enabling smoother transitions between different instance types and disk sizes without encountering edit operation issues. PLAT-10325
  • Avoids a crash when an alert is generated but no default destination has been specified for the alert notification channel by displaying No default destination configured instead. PLAT-10340
  • Removes stale Postgres socket lock files automatically during pod startup in Kubernetes, addressing issues with pod restarts after ungraceful Postgres exits and avoiding manual cleanup. PLAT-10576
  • Ensures the nodes page doesn't crash (due to a missing cluster access key). In such situations, display <private key> instead. PLAT-10613
  • Fixes erroneous duplicate region codes (for example, us-west-2) on the universe list page by ignoring replicas located in the same area as the primary clusters. PLAT-10666
  • Fixes to enable proper & correct display of the Memtable metrics. PLAT-10873
  • Resolves permission errors when creating .bash_profile for a new user on certain operating systems by explicitly setting the file ownership. PLAT-10930
  • Fixes backup and restore failure issues on CentOS 7 by treating prom_snapshot as a variable, resolving a regression from 2.18.4 and 2.20.0 versions. PLAT-11216
  • Simplifies on-prem universe creation by allowing hostnames over 20 characters. Also, adds a Python version check to the node-agent preflight to prevent Ansible module failures. PLAT-11254
  • Enhances the reliability of backup operations on Kubernetes installations by updating the yb_platform_backup script to read the version metadata json file from the backup tarball instead of less reliable file paths. This not only prevents backup failures due to inability to find the version metadata files but also avoids early operational exits and restore failures. PLAT-11354
  • Eliminates user interface crashes when selecting "Custom" date picker from the metrics tab after choosing timezone from User Profile, by correctly utilizing the moment-timezone library. PLAT-11358
  • Eliminates null pointer exception when adding a Read Replica in an On-Prem universe with GFlag in the Primary Cluster, ensuring smooth operations. PLAT-11417
  • Fixes an issue for customers adding a read-replica after upgrading from 2.17.1 to 2.18, thereby enhancing user experience in managing universes. Rectifies an issue faced during the migration process from 2.17.1-b78 to any stable version, when attacks occur while editing the primary universe or attempting to add a Read Replica (RR). The root cause is identified as a migration script (V208) incorrectly assigning SCRATCH as the storage type for Kubernetes and On-Premises universes. To rectify this, a new migration script has been introduced that sets the storage type for these universes to null initially. The storage type SCRATCH is now only assigned for GCP universes, preventing the task from failing. PLAT-11452
  • For Kubernetes universes, improves resilience during universe node's disk size expansion by allowing persistent volume claim (PVC) expansion to proceed in spite of errors, ensuring statefulset recreation. Furthermore, detects any issues in expansion after completion. PLAT-11454
  • Allows gflags to be added to a Read Replica cluster for Kubernetes, fixing a regression in the UI. PLAT-11457
  • After editing a Kubernetes "provider", ensures uninterrupted universe creation, and avoids errors related to autofilled local K8s configurations via a special case handling for kubeConfig. PLAT-11464
  • During a DR or xCluster bootstrap (that is, making a full copy from primary to replica), improved error handling so that the operation can succeed in spite of a database presence check failure. PLAT-11468
  • Displays accurate restore status in the Restore History tab, correcting the previous issue where a failed restore was incorrectly labelled as Backup Failed. PLAT-11489
  • Eliminates the crash of the user interface when clicking the edit EIT (Encryption in Transit) button from the security actions dropdown, enhancing the stability of the platform. PLAT-11503
  • Reduces Kubernetes backup failure rates by addressing permission issues in the /opt/yugabyte/yugaware directory, enabling more successful backups. PLAT-11481,PLAT-11517
  • Adjusts affected_node_names and similar labels (yugabyte_affected_node_names, yugabyte_affected_node_identifiers, yugabyte_affected_node_addresses ) to use comma separation instead of space separation to align with alert notification template expectations. PLAT-11532
  • Resolves a regression that prevented backup tasks from resuming and releasing universe locks after a YugabyteDB Anywhere (aka platform) restart. PLAT-11533
  • Enhances backup deletion with three attempts before declaring failure, processes GCS backup deletion in batches of 100 to follow best practices, and prevents errors by stopping function if blob size is zero. PLAT-11299,PLAT-11571
  • Rectifies precheck failure during on-prem node addition when NodeAgent is employed. PLAT-11641
  • Resolves an issue where invalid Prometheus expressions were generated for disk usage, affecting on-prem universes with multiple mount points. This correction ensures the consistent display of disk usage metrics, thereby offering reliable data for universes that employ multiple mount roots. The previous error resulted in no data showing for specific metrics graphs, such as Data Disk Usage Percentage and Data Disks Usage. With this fix, users can now accurately monitor and understand disk space utilization across different mount points. PLAT-11813
  • For K8s universes, resolves an issue that was disabling YBC in new tservers after modifying a universe (specifically, in a way that caused an AZ migration), by ensuring YBC Helm value remains true during master rolling updates. PLAT-11919
  • Corrects an issue that was preventing instance type creation in YBA DB by successfully reading values from the runtime configuration with fallback to static configurations rather than just using static configurations. Also rectifies a misconfiguration, ensuring the runtime configuration is defined at the correct scope. This amendment enhances reliability in instance type management. PLAT-10496,PLAT-11950

v2.20.0.2 - December 15, 2023

Downloads

Use 2.20.1.3 or later.

For instructions on installing YugabyteDB Anywhere, refer to Install YugabyteDB Anywhere.

Bug fixes

  • [PLAT-10930] Permissions issue when creating yugabyte bash_profile
  • [PLAT-10975] Python preflight check now also checks python version binaries
  • [PLAT-11234] Update node exporter to 1.7.0

v2.20.0.1 - December 5, 2023

Downloads

Use 2.20.1.3 or later.

For instructions on installing YugabyteDB Anywhere, refer to Install YugabyteDB Anywhere.

Improvements

  • [PLAT-11526] Add HA disable cert validation runtime conf

Bug fixes

  • [PLAT-11314] YBA Installer HA doesn't use sudo.
  • [PLAT-11315] Add new Memtable metric based on DB change and add migration script
  • [PLAT-11352] [xCluster] Do not pass materialized views when setting up replication
  • [PLAT-11540] [PLAT-11176] Pass Java PKCS TrustStore for play.ws.ssl connections

v2.20.0.0 - November 13, 2023

Downloads

Use 2.20.1.3 or later.

For instructions on installing YugabyteDB Anywhere, refer to Install YugabyteDB Anywhere.

Highlights

  • Support for OIDC token-based authentication via Azure AD. This allows YSQL database users to sign in to YugabyteDB Anywhere universes using their JSON Web Token (JWT) as their password. When configured in YugabyteDB Anywhere, users can obtain their token from their YugabyteDB Anywhere user profile, or copy it from the YugabyteDB Anywhere landing page.

  • Ability to browse the full history of restores for universes. After performing a restore, navigate to the Restore History tab to verify restore details and view all previous restores.

  • Support for backing up and restoring tablespaces. You can now restore tablespaces to a universe with a matching topology; that is, a universe that have the same zones and regions as the backed up universe.

  • Online point-in-time-recovery (PITR), which allows you to perform PITR without the need to stop any workloads.

  • Enhanced metrics display. Click and drag to select a time range in any chart to zoom in to display granular data points.

  • Quicker rolling restarts due to enhancements that accelerate the time it takes to perform local bootstrapping of tablets.

  • Improved safety checks for rolling upgrades. Before a node is upgraded, YugabyteDB Anywhere checks for under-replicated tablets to make sure your universe is in a healthy state before proceeding with the upgrade.

  • Improvements to node disk usage alerts to support alerting on non-data partitions.

New Features

  • [PLAT-9084] Support LDAP with RBAC
  • [PLAT-10277] OIDC Support for k8s based universes
  • [PLAT-10438] Add runtime flag checks for all new RBAC APIs
  • [PLAT-10456] Implement YbaApi annotation and its action

Improvements

  • [PLAT-6164] Backup script version checking improvements
  • [PLAT-6724] Setting postgres db password
  • [PLAT-8585] [PLAT-10860] Add a node task to repair node-agent for cloud providers for existing node-agent enabled universes only
  • [PLAT-8975] During YSQL upgrade, select active YB-TServer in same region as master leader
  • [PLAT-9700] UI widget changes
  • [PLAT-10129] [PLAT-10810] [PLAT-10841] [PLAT-10887] Filter universes based on role bindings
  • [PLAT-10193] [xCluster] Disallow basic xCluster setup if transactional xCluster configuration exists
  • [PLAT-10217] Improving PEX activation time
  • [PLAT-10363] Adds Validation on ImageBundle as part of region add/delete in provider
  • [PLAT-10369] Prometheus scrape interval/timeout preflight check
  • [PLAT-10371] Change DB Queue Overflow alert label
  • [PLAT-10407] Adds ap-south-2 region in YBA
  • [PLAT-10415] Stop building PEX for python < 3.8
  • [PLAT-10417] Improve status updater to use namespace
  • [PLAT-10483] Add validation on role bindings for resources with generic permissions
  • [PLAT-10489] Pass show_help=false to DB scrape endpoint to avoid scraping help and type
  • [PLAT-10502] Add guard rails for YCQL tables while disabling YCQL
  • [PLAT-10527] Re-provision DB nodes in rolling manner during software upgrade and reverting systemd reboot workaround
  • [PLAT-10531] Better error handling for bash script as part of postgres upgrade
  • [PLAT-10540] [dr] Disable DR APIs by default
  • [PLAT-10544] [PLAT-10414] Minor support bundle CRD improvements
  • [PLAT-10552] Add useTablespaces boolean in list backup response
  • [PLAT-10556] Adding Prometheus basic auth to YBA Installer
  • [PLAT-10618] Need to sync roles before turning on new RBAC runtime flag
  • [PLAT-10620] Correct service file template with proxies
  • [PLAT-10640] Automatically adjust associated role bindings when role is edited
  • [PLAT-10689] Support allowAll=false and empty resource UUID set
  • [PLAT-10691] Add option to provide service account name in DB helm charts
  • [PLAT-10694] Improve logging for schedule backups
  • [PLAT-10806] Searching custom path for active software
  • [PLAT-10809] Use serializable transaction with retry for node-agent cert update as it is very critical
  • [PLAT-10838] Bump Prometheus version
  • [PLAT-10866] Increment YBC version to 2.0.0.0-b15 on master
  • [PLAT-10904] [PLAT-10721] Add universe read permission annotation to universe configure API. Add OTHER.READ to logs API
  • [PLAT-10910] Scrub APIs: EAR, RBAC, Support Bundle
  • [PLAT-10932] Increment YBC version to 2.0.0.0-b16
  • [PLAT-10991] [xCluster] Mark xCluster APIs visibilities
  • [PLAT-11001] Scrub APIs: Backup/Restores/Schedules
  • [PLAT-11045] Make yb.ui.feature_flags.granular_metrics runtime flag as enabled by default
  • [PLAT-11135] [PLAT-10899] Annotated the YBA APIs (Certs/Access Keys/Region/AZ's/ImageBundle)
  • [PLAT] [YBA API] Skip swagger generation for deprecated APIs, Implement YbaApiTest to validate proper usage of YbaApi

Bug fixes

  • [PLAT-8895] Prometheus restore fixes
  • [PLAT-10422] Manually issuing reboot command during provision
  • [PLAT-10494] StatusUpdater injection was not used correctly
  • [PLAT-10548] [UI] Backup UI padding is missing
  • [PLAT-10554] Fix NPE for backups with De-commissioned nodes
  • [PLAT-10560] Incorrect master key rotation when first backup/restore from EAR universe
  • [PLAT-10579] Fix the yb_platform_backup script for restore commands and platform backup restore for docker based installations
  • [PLAT-10599] Backup chaos testing fix: Consider ToBeRemoved state as Live
  • [PLAT-10614] Fix expressing in CPU usage alert
  • [PLAT-10628] [PLAT-10542] Fix for missing Node UUID causes certain tasks to fail in new YBA releases
  • [PLAT-10629] Fix 296 migration
  • [PLAT-10632] K8s NFS based backup/restore pre-checks fix
  • [PLAT-10637] [PLAT-10638] Fixes for AWS provider SG validation
  • [PLAT-10676] Fix disk volume usage percentage graph in outlier nodes mode
  • [PLAT-10692] [PLAT-10891] [PLAT-10840] Assign ConnectOnly role by default if no system roles given in bindings for user
  • [PLAT-10700] [PLAT-10646] [PLAT-10695] Backport some missed fixes
  • [PLAT-10794] Use su instead of sudo -u to run commands as user
  • [PLAT-10808] Fixing up node agent certificate path
  • [PLAT-10813] [RBAC|UI] Disable Edit Role for system roles -[PLAT-10811] [RBAC|UI] Edit Role modal is not closed automatically if there is an error [PLAT-10816]-[PLAT-10821] [PLAT-10822]
  • [PLAT-10823] [On-Prem] Universe Creation failing with read replica
  • [PLAT-10824] * [PLAT-10656] Fix issues with zooming charts to get fine grained data points
  • [PLAT-10827] Fixing broken GflagsUpgrades on K8s
  • [PLAT-10849] [UX] Give exact info message which indicates why we are not allowing to take Backup on Universe * [PLAT-10848] - [PLAT-10843] - [PLAT-10815]
  • [PLAT-10868] In UI, make backup tablespaces checkbox unchecked by default
  • [PLAT-10877] Increase minimal step to 30 + remove the limit on smallest range for detailed metrics feature
  • [PLAT-10897] Handling ansible-playbook with a long shebang line
  • [PLAT-10901] Fix typo and make password at least 8 characters long
  • [PLAT-10908] [PLAT-11004] [PLAT-10940] [PLAT-10933] [PLAT-10844] [PLAT-10845] [PLAT-10894] [PLAT-10909] fix RBAC UI issues
  • [PLAT-10911] [PLAT-10630] [2.21.0.0-b12] [Azure] Resume universe failed [Custom exit code exception: Could not find last PowerState for VM]
  • [PLAT-10935] Access Key rotation fails for manually uploaded keys
  • [PLAT-11059] Avoid resetting node agent as part of provider edit
  • [PLAT-11073] [PLAT]Remove Backup tablespaces checkbox if YCQL is selected - [PLAT-11149] [PLAT] Disable Backup tablespaces checkbox in Change Retention Period
  • [PLAT-11094] Fix NPE for cases where there are no tablespaces in target universe
  • [PLAT-11102] Fixing replicated-migrate restore
  • [PLAT-11123] [PLAT-11124] Backing up provision_instance.py and node agent certs
  • [PLAT-11130] [UI] [2.20] Fix edit security locators
  • [PLAT-11142] YBA Installer fix java non proxy hosts
  • [PLAT-11173] Replicated migrate failing with custom root directory
  • [PLAT-11196] Set the provider reference in image bundle as part of provider edit
  • [PLAT-11216] Backup script failing on CentOS 7 Fix swaggerGen