Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DocDB] Add unit tests for Upgrades and Rollbacks #23492

Closed
1 task done
hari90 opened this issue Aug 13, 2024 · 0 comments
Closed
1 task done

[DocDB] Add unit tests for Upgrades and Rollbacks #23492

hari90 opened this issue Aug 13, 2024 · 0 comments
Assignees
Labels
area/docdb YugabyteDB core features kind/enhancement This is an enhancement of an existing feature priority/medium Medium priority issue

Comments

@hari90
Copy link
Contributor

hari90 commented Aug 13, 2024

Jira Link: DB-12406

Description

Add unit tests for Upgrades and Rollbacks

Issue Type

kind/enhancement

Warning: Please confirm that this issue does not contain any sensitive information

  • I confirm this issue does not contain any sensitive information.
@hari90 hari90 added area/docdb YugabyteDB core features status/awaiting-triage Issue awaiting triage labels Aug 13, 2024
@hari90 hari90 self-assigned this Aug 13, 2024
@yugabyte-ci yugabyte-ci added kind/enhancement This is an enhancement of an existing feature priority/medium Medium priority issue labels Aug 13, 2024
@hari90 hari90 removed the status/awaiting-triage Issue awaiting triage label Aug 13, 2024
hari90 added a commit that referenced this issue Aug 17, 2024
Summary:
Adding the framework to perform DB upgrades and rollbacks in unit tests.

- `build.xml` stores the location of the builds for various os architecture and build types. We current use `linux_debug_x86`, `linux_release_x86`, `darwin_debug_arm64` and `darwin_release_arm64`. Jenkins covers all linux and darwin release types. Darwin debug is for use on dev mac machines.
- Currently supports `2.20.2.4` and `2024.1.0.1` as older versions. New major versions will be added manually as they become available. Minor versions can be added on demand if the need for one arrises.
- 2.20 linux builds are disabled since `post_install.sh` get stuck.
- Builds are downloaded to the `/opt/yb-build/db-upgrade` directory if it does not already exist.
- We do not maintain builds for ASAN and TSAN so these build types are not run.
- `UpgradeTestBase` provides the framework to perform all Upgrade and Rollback actions.
- `BasicUpgradeTest` tests upgrade and rollback using a simple bank balance workload.
- D32492 changed the DocDB format for debug builds so that it is compatible with release builds. This change was not backported, so debug builds on version 2024.2, or older are generated after patching this change.

#23492
Jira: DB-12406

Test Plan:
BasicUpgradeTest, TestUpgradeFrom_2_20_2_4
BasicUpgradeTest, TestRollbackTo_2_20_2_4
BasicUpgradeTest, TestUpgradeFrom_2024_1_0_1
BasicUpgradeTest, TestRollbackTo_2024_1_0_1

Reviewers: asrivastava, tfoucher, slingam

Reviewed By: asrivastava

Subscribers: ybase

Differential Revision: https://phorge.dev.yugabyte.com/D37153
jasonyb pushed a commit that referenced this issue Aug 20, 2024
Summary:
 b8cd4da Fix broken header links in Explore section (#23522)
 cc43b2e [DEVOPS-3048] test automation: Backup unit tests use YBC by default
 43652cc [PLAT-13836] Upgrading python setuptools
 71f5eeb [doc][yba] Note on deleting KMS config (#23527)
 a7061c6 [PLAT-14912] Adding replicated migrate guardrails for subdirectories
 9b21783 [#23286] xCluster: Speedup setup for large table counts
 6d4d8f6 [DEVOPS-3048] test automation: Fix ybc extraction
 15fd362 [PLAT-14951] Add positive interger error message to pitr param step
 c8cbcbf [#23243] docdb: Fix tablet bootstrap stuck when replaying truncate operation
 5f286f5 [PLAT-14976] Make node agent silent parameters more obvious by showing in usage
 68ac66e [#23492] DocDB: Upgrade and Rollback tests
 Excluded: 516ead0 [#23304] xCluster: fix ysql_dump/Postgres so pg_class OIDs are preserved
 Excluded: 16941de [#23304] fix Postgres so old dumps can be loaded that do not have pg_class OIDs
 404075d [#23376] DocDB: Utilities needed for HNSW
 875ccc1 [PLAT-14077] Update /get endpoint to support db scoped replication tables + metrics
 71610b5 [#23536] fix test_macros.h to avoid problems with complaints about capturing variables
 027f0e1 [#23493] xCluster: implement function for scanning sequences_data table
 9103885 [#22462] DocDB: Enable pg_cron tests in TSAN
 7e1f72c [PLAT-14963]Clicking use same/diff replica while DR repair is throwing a permission error for a superadmin user
 b983d56 [PLAT-14595] Ability to change communication ports via edit universe
 a6ee050 [PLAT-13285] Make cloud provider edit retryable

Test Plan: Jenkins: rebase: pg15-cherrypicks

Reviewers: jason, tfoucher

Tags: #jenkins-ready

Differential Revision: https://phorge.dev.yugabyte.com/D37382
@hari90 hari90 closed this as completed Aug 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/docdb YugabyteDB core features kind/enhancement This is an enhancement of an existing feature priority/medium Medium priority issue
Projects
None yet
Development

No branches or pull requests

2 participants