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

Upgrade to PG17 in Github actions #2114

Merged
merged 29 commits into from
Dec 27, 2024
Merged

Upgrade to PG17 in Github actions #2114

merged 29 commits into from
Dec 27, 2024

Conversation

priyanshi-yb
Copy link
Contributor

@priyanshi-yb priyanshi-yb commented Dec 24, 2024

Describe the changes in this pull request

PG 17 upgrade, Major differences -

  1. MVIEW/Views' SELECT stmt
    - Validation fix only
  2. SHELL TYPE (CREATE TYPE type_name; https://www.postgresql.org/docs/11/sql-createtype.html#:~:text=There%20are%20five,in%20those%20sections.)
    - Going in Uncategorized.sql, must be considered while extracting the schema from pg_dump.
  3. SET transaction_timeout = 0; (unrecognized configuration parameter "transaction_timeout" (SQLSTATE 42704))
    - We must skip setting this as it is not supported in YB yet.

Fixed Validation files for the VIEW/MVIEW's select statements
Skipping the SET transaction_timeout = 0; in the import schema to be not executed on YB.

Fixes #2121

Describe if there are any user-facing changes

No

How was this pull request tested?

https://jenkins.dev.yugabyte.com/job/users/job/yb-voyager-testing/job/yb-voyager-testing-pipeline-test/1073
https://jenkins.dev.yugabyte.com/job/users/job/yb-voyager-testing/job/yb-voyager-testing-pipeline-test/1074

Does your PR have changes that can cause upgrade issues?

Component Breaking changes?
MetaDB No
Name registry json No
Data File Descriptor Json No
Export Snapshot Status Json No
Import Data State No
Export Status Json No
Data .sql files of tables No
Export and import data queue No
Schema Dump No
AssessmentDB No
Sizing DB No
Migration Assessment Report Json No
Callhome Json No
YugabyteD Tables No
TargetDB Metadata Tables No

@priyanshi-yb priyanshi-yb changed the title Upgraded to PG17 in misc-migtests.yml and MAX_SUPPORTED_PG_VERSION Upgrade to PG17 in Github actions Dec 24, 2024
@priyanshi-yb priyanshi-yb requested review from makalaaneesh, shubham-yb and sanyamsinghal and removed request for shubham-yb December 26, 2024 07:01
@priyanshi-yb priyanshi-yb marked this pull request as ready for review December 26, 2024 12:10
Comment on lines 71 to 72
yes | ./install-yb-voyager --install-from-local-source --only-pg-support
sudo apt-get -y install postgresql-17
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should we start shipping PG 17 via installer script now?
Because
If we are gonna detect till PG17, then installing older version during setup is of no use.
It will be a manual step for the user unnecessarily.

Lets discuss this in the standup tomorrow.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes that is already in plan. I believe there is already ticket for that https://yugabyte.atlassian.net/browse/DB-14593

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cool, just add a TODO here saying that we need to remove this once installer script picks up 17

stmt = strings.ToUpper(stmt)

// pg_dump generate `SET client_min_messages = 'warning';`, but we want to get
// NOTICE severity as well (which is the default), hence skipping this.
if strings.Contains(stmt, "SET CLIENT_MIN_MESSAGES") {
//pg_dump 17 gives this SET transaction_timeout = 0;
if strings.Contains(stmt, "SET CLIENT_MIN_MESSAGES") || strings.Contains(stmt, "SET TRANSACTION_TIMEOUT") {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

constants ?

Copy link
Collaborator

@sanyamsinghal sanyamsinghal left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@@ -108,27 +110,27 @@ jobs:
psql "postgresql://yugabyte@yb-tserver-n1:5433/yugabyte" -c "SELECT version();"

- name: "TEST: PG sample schemas (sakila)"
if: ${{ !cancelled() && matrix.test_group == 'offline' }}
if: ${{ !cancelled() && matrix.test_group == 'offline'}}
Copy link
Collaborator

@sanyamsinghal sanyamsinghal Dec 27, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: be consistent in formatting here(wrt the spaces before/after braces used):
${{ !cancelled() && matrix.test_group == 'offline' }}
or
${{!cancelled() && matrix.test_group == 'offline'}}

@priyanshi-yb priyanshi-yb merged commit 47a8e50 into main Dec 27, 2024
67 checks passed
@priyanshi-yb priyanshi-yb deleted the priyanshi/upgrade-17 branch December 27, 2024 10:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Voyager] Upgrade to PG 17 in the GH actions and Jenkins pipelines
2 participants