Repository navigation
Conversation
Upgrades from 15.19.0.007 to 17 fail when pg_upgrade starts the new cluster: it loads supautils from the site profile, which holds the PG15 build, and fails with "undefined symbol: bms_is_empty". pg_upgrade runs both clusters with a copy of the old cluster's postgresql.conf, and since #2424 that sets dynamic_library_path to the site profile first. Dropping it from the copy makes each cluster load the supautils bundled with its own postgres package from $libdir. The upgraded instance keeps its own config and site profile. Assisted-by: Claude Opus 5.5 <noreply@anthropic.com>
Package version diff: none (aarch64-linux, x86_64-linux) |
Collaborator
Author
|
superseded by #2602 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What kind of change does this PR introduce?
Bug fix
What is the current behavior?
Doing a major upgrade from
15.*.007to17.*.007+newer fails when target PG starts up and tries to load supautils with following error:This is because we use the source pg config as is with
dynamic_library_path = '/nix/var/nix/profiles/site/lib/postgresql:$libdir'which will cause PG17 to load PG15's supautils and fail.What is the new behavior?
We drop dynamic_library_path from the temporary config so PG17 uses the supautils in its own profile.