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

postgresql_11: init at 11.0 #48664

Merged
merged 5 commits into from Oct 30, 2018
Merged

postgresql_11: init at 11.0 #48664

merged 5 commits into from Oct 30, 2018

Conversation

alyssais
Copy link
Member

Motivation for this change

I've renamed postgres100 to postgres10 as part of this change, because 100 implies Nix packages multiple versions of Postgresql 10, which it does not. This is similar to how we do things for eg OpenSSL (#46524).

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Fits CONTRIBUTING.md.

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: postgresql10, postgresql11

Partial log (click to expand)

checking for references to /build in /nix/store/5iq2cscxvz96iij1v9h0qh05nlixb9jr-postgresql-11.0-lib...
shrinking RPATHs of ELF executables and libraries in /nix/store/h71n0mzwfdkbc8jz3h0r01jvk0lcycn8-postgresql-11.0-doc
strip is /nix/store/p9akxn2sfy4wkhqdqa3li97pc6jaz3r1-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/h71n0mzwfdkbc8jz3h0r01jvk0lcycn8-postgresql-11.0-doc
checking for references to /build in /nix/store/h71n0mzwfdkbc8jz3h0r01jvk0lcycn8-postgresql-11.0-doc...
shrinking RPATHs of ELF executables and libraries in /nix/store/mcghl26m059l4p6i0dknndxha7gjhpqi-postgresql-11.0-man
gzipping man pages under /nix/store/mcghl26m059l4p6i0dknndxha7gjhpqi-postgresql-11.0-man/share/man/
strip is /nix/store/p9akxn2sfy4wkhqdqa3li97pc6jaz3r1-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/mcghl26m059l4p6i0dknndxha7gjhpqi-postgresql-11.0-man
checking for references to /build in /nix/store/mcghl26m059l4p6i0dknndxha7gjhpqi-postgresql-11.0-man...

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: postgresql10, postgresql11

Partial log (click to expand)

checking for references to /build in /nix/store/nc8l8kjvxq3q77spggfgcbk4lkikjxgv-postgresql-11.0-lib...
shrinking RPATHs of ELF executables and libraries in /nix/store/sahd7232kmsccd2mfhv40vgblqym3q8h-postgresql-11.0-doc
strip is /nix/store/vcc4svb8gy29g4pam2zja6llkbcwsyiq-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/sahd7232kmsccd2mfhv40vgblqym3q8h-postgresql-11.0-doc
checking for references to /build in /nix/store/sahd7232kmsccd2mfhv40vgblqym3q8h-postgresql-11.0-doc...
shrinking RPATHs of ELF executables and libraries in /nix/store/igmrz2109kl7pna2k5f985147skvf48h-postgresql-11.0-man
gzipping man pages under /nix/store/igmrz2109kl7pna2k5f985147skvf48h-postgresql-11.0-man/share/man/
strip is /nix/store/vcc4svb8gy29g4pam2zja6llkbcwsyiq-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/igmrz2109kl7pna2k5f985147skvf48h-postgresql-11.0-man
checking for references to /build in /nix/store/igmrz2109kl7pna2k5f985147skvf48h-postgresql-11.0-man...

Copy link
Member

@lsix lsix left a comment

Choose a reason for hiding this comment

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

I have not been really looking at it for the moment, but do we want to add an option in the service to enable the new JIT capabilities for pg-11 (I think it is only a runtime dependency to the LLVM infrastructure, but I have to check)?

As far as I can see, this breaks the nixos/tests/postgis.nix test (which tests postgresql10 + postgis, so it uses the old postgresql100 attribute name). Can you update this as well ? Ideally, it should test all versions of postgresql with postgis, but only bumping to postgres11 should be fine.

@lsix
Copy link
Member

lsix commented Oct 19, 2018

(and thanks for the PR of course!)

@lsix
Copy link
Member

lsix commented Oct 19, 2018

JIT support requires a configure time flag: https://www.postgresql.org/docs/11/static/install-procedure.html#CONFIGURE-WITH-LLVM

I am not saying we should set that up now, just wondering if we should introduce an option to support it.

@alyssais
Copy link
Member Author

alyssais commented Oct 21, 2018 via email

@alyssais
Copy link
Member Author

Because that would be inconsistent with the rest of nixpkgs.

On further investigation I note that there are packages that separate name and version with an underscore, eg ruby_2_4. But most seem to be in the postgres96 style. I’d like to see that more consistent (and if one form were to be preferred I’d rather the one with underscores), but I think that is out of scope here.

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: postgresql10, postgresql11

Partial log (click to expand)

checking for references to /build in /nix/store/nc8l8kjvxq3q77spggfgcbk4lkikjxgv-postgresql-11.0-lib...
shrinking RPATHs of ELF executables and libraries in /nix/store/sahd7232kmsccd2mfhv40vgblqym3q8h-postgresql-11.0-doc
strip is /nix/store/vcc4svb8gy29g4pam2zja6llkbcwsyiq-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/sahd7232kmsccd2mfhv40vgblqym3q8h-postgresql-11.0-doc
checking for references to /build in /nix/store/sahd7232kmsccd2mfhv40vgblqym3q8h-postgresql-11.0-doc...
shrinking RPATHs of ELF executables and libraries in /nix/store/igmrz2109kl7pna2k5f985147skvf48h-postgresql-11.0-man
gzipping man pages under /nix/store/igmrz2109kl7pna2k5f985147skvf48h-postgresql-11.0-man/share/man/
strip is /nix/store/vcc4svb8gy29g4pam2zja6llkbcwsyiq-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/igmrz2109kl7pna2k5f985147skvf48h-postgresql-11.0-man
checking for references to /build in /nix/store/igmrz2109kl7pna2k5f985147skvf48h-postgresql-11.0-man...

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: postgresql10, postgresql11

Partial log (click to expand)

checking for references to /build in /nix/store/ynh18bkcpfnngvz3n19zmx6bchkgp3ra-postgresql-11.0-lib...
shrinking RPATHs of ELF executables and libraries in /nix/store/1ghrvl1f8njj8dkidgq70zd35lh3gkc2-postgresql-11.0-doc
strip is /nix/store/p9akxn2sfy4wkhqdqa3li97pc6jaz3r1-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/1ghrvl1f8njj8dkidgq70zd35lh3gkc2-postgresql-11.0-doc
checking for references to /build in /nix/store/1ghrvl1f8njj8dkidgq70zd35lh3gkc2-postgresql-11.0-doc...
shrinking RPATHs of ELF executables and libraries in /nix/store/6sw3ip5vz2dsp0nx80f71rzkn642n65w-postgresql-11.0-man
gzipping man pages under /nix/store/6sw3ip5vz2dsp0nx80f71rzkn642n65w-postgresql-11.0-man/share/man/
strip is /nix/store/p9akxn2sfy4wkhqdqa3li97pc6jaz3r1-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/6sw3ip5vz2dsp0nx80f71rzkn642n65w-postgresql-11.0-man
checking for references to /build in /nix/store/6sw3ip5vz2dsp0nx80f71rzkn642n65w-postgresql-11.0-man...

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: postgresql10, postgresql11

Partial log (click to expand)

checking for references to /build in /nix/store/5iq2cscxvz96iij1v9h0qh05nlixb9jr-postgresql-11.0-lib...
shrinking RPATHs of ELF executables and libraries in /nix/store/h71n0mzwfdkbc8jz3h0r01jvk0lcycn8-postgresql-11.0-doc
strip is /nix/store/p9akxn2sfy4wkhqdqa3li97pc6jaz3r1-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/h71n0mzwfdkbc8jz3h0r01jvk0lcycn8-postgresql-11.0-doc
checking for references to /build in /nix/store/h71n0mzwfdkbc8jz3h0r01jvk0lcycn8-postgresql-11.0-doc...
shrinking RPATHs of ELF executables and libraries in /nix/store/mcghl26m059l4p6i0dknndxha7gjhpqi-postgresql-11.0-man
gzipping man pages under /nix/store/mcghl26m059l4p6i0dknndxha7gjhpqi-postgresql-11.0-man/share/man/
strip is /nix/store/p9akxn2sfy4wkhqdqa3li97pc6jaz3r1-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/mcghl26m059l4p6i0dknndxha7gjhpqi-postgresql-11.0-man
checking for references to /build in /nix/store/mcghl26m059l4p6i0dknndxha7gjhpqi-postgresql-11.0-man...

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: postgresql10, postgresql11

Partial log (click to expand)

checking for references to /build in /nix/store/99zvzgjb26jsygk9jbbz0z2470cykcvb-postgresql-11.0-lib...
shrinking RPATHs of ELF executables and libraries in /nix/store/hqgw90f41q3acgdkjwqfdvfvhv6rfsil-postgresql-11.0-doc
strip is /nix/store/vcc4svb8gy29g4pam2zja6llkbcwsyiq-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/hqgw90f41q3acgdkjwqfdvfvhv6rfsil-postgresql-11.0-doc
checking for references to /build in /nix/store/hqgw90f41q3acgdkjwqfdvfvhv6rfsil-postgresql-11.0-doc...
shrinking RPATHs of ELF executables and libraries in /nix/store/csaaqlgln27b6jn3pxa2fjvl2a4nq7jd-postgresql-11.0-man
gzipping man pages under /nix/store/csaaqlgln27b6jn3pxa2fjvl2a4nq7jd-postgresql-11.0-man/share/man/
strip is /nix/store/vcc4svb8gy29g4pam2zja6llkbcwsyiq-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/csaaqlgln27b6jn3pxa2fjvl2a4nq7jd-postgresql-11.0-man
checking for references to /build in /nix/store/csaaqlgln27b6jn3pxa2fjvl2a4nq7jd-postgresql-11.0-man...

@alyssais
Copy link
Member Author

The problem here is not with 10 and 11, but with 95 and 96 which have lost the delimiter

Agreed. I'll fix those and add aliases.

@alyssais
Copy link
Member Author

Done! Had to rebase to avoid a conflict in the release notes.

@lsix
Copy link
Member

lsix commented Oct 30, 2018

Looks like you have re-introduced the JIT related commit (the one that compiles everything with clang instead of gcc)

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: postgresql_11

Partial log (click to expand)

shrinking RPATHs of ELF executables and libraries in /nix/store/1ghrvl1f8njj8dkidgq70zd35lh3gkc2-postgresql-11.0-doc
strip is /nix/store/p9akxn2sfy4wkhqdqa3li97pc6jaz3r1-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/1ghrvl1f8njj8dkidgq70zd35lh3gkc2-postgresql-11.0-doc
checking for references to /build in /nix/store/1ghrvl1f8njj8dkidgq70zd35lh3gkc2-postgresql-11.0-doc...
shrinking RPATHs of ELF executables and libraries in /nix/store/6sw3ip5vz2dsp0nx80f71rzkn642n65w-postgresql-11.0-man
gzipping man pages under /nix/store/6sw3ip5vz2dsp0nx80f71rzkn642n65w-postgresql-11.0-man/share/man/
strip is /nix/store/p9akxn2sfy4wkhqdqa3li97pc6jaz3r1-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/6sw3ip5vz2dsp0nx80f71rzkn642n65w-postgresql-11.0-man
checking for references to /build in /nix/store/6sw3ip5vz2dsp0nx80f71rzkn642n65w-postgresql-11.0-man...
/nix/store/srywfnaaf4vdjw2igb9qawlvh0mfnn8w-postgresql-11.0

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: postgresql_11

Partial log (click to expand)

checking for references to /build in /nix/store/99zvzgjb26jsygk9jbbz0z2470cykcvb-postgresql-11.0-lib...
shrinking RPATHs of ELF executables and libraries in /nix/store/hqgw90f41q3acgdkjwqfdvfvhv6rfsil-postgresql-11.0-doc
strip is /nix/store/vcc4svb8gy29g4pam2zja6llkbcwsyiq-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/hqgw90f41q3acgdkjwqfdvfvhv6rfsil-postgresql-11.0-doc
checking for references to /build in /nix/store/hqgw90f41q3acgdkjwqfdvfvhv6rfsil-postgresql-11.0-doc...
shrinking RPATHs of ELF executables and libraries in /nix/store/csaaqlgln27b6jn3pxa2fjvl2a4nq7jd-postgresql-11.0-man
gzipping man pages under /nix/store/csaaqlgln27b6jn3pxa2fjvl2a4nq7jd-postgresql-11.0-man/share/man/
strip is /nix/store/vcc4svb8gy29g4pam2zja6llkbcwsyiq-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/csaaqlgln27b6jn3pxa2fjvl2a4nq7jd-postgresql-11.0-man
checking for references to /build in /nix/store/csaaqlgln27b6jn3pxa2fjvl2a4nq7jd-postgresql-11.0-man...

@alyssais
Copy link
Member Author

Ah whoops, so I had. Fixed.

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: postgresql_11

Partial log (click to expand)

checking for references to /build in /nix/store/5iq2cscxvz96iij1v9h0qh05nlixb9jr-postgresql-11.0-lib...
shrinking RPATHs of ELF executables and libraries in /nix/store/h71n0mzwfdkbc8jz3h0r01jvk0lcycn8-postgresql-11.0-doc
strip is /nix/store/p9akxn2sfy4wkhqdqa3li97pc6jaz3r1-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/h71n0mzwfdkbc8jz3h0r01jvk0lcycn8-postgresql-11.0-doc
checking for references to /build in /nix/store/h71n0mzwfdkbc8jz3h0r01jvk0lcycn8-postgresql-11.0-doc...
shrinking RPATHs of ELF executables and libraries in /nix/store/mcghl26m059l4p6i0dknndxha7gjhpqi-postgresql-11.0-man
gzipping man pages under /nix/store/mcghl26m059l4p6i0dknndxha7gjhpqi-postgresql-11.0-man/share/man/
strip is /nix/store/p9akxn2sfy4wkhqdqa3li97pc6jaz3r1-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/mcghl26m059l4p6i0dknndxha7gjhpqi-postgresql-11.0-man
checking for references to /build in /nix/store/mcghl26m059l4p6i0dknndxha7gjhpqi-postgresql-11.0-man...

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: postgresql_11

Partial log (click to expand)

checking for references to /build in /nix/store/nc8l8kjvxq3q77spggfgcbk4lkikjxgv-postgresql-11.0-lib...
shrinking RPATHs of ELF executables and libraries in /nix/store/sahd7232kmsccd2mfhv40vgblqym3q8h-postgresql-11.0-doc
strip is /nix/store/vcc4svb8gy29g4pam2zja6llkbcwsyiq-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/sahd7232kmsccd2mfhv40vgblqym3q8h-postgresql-11.0-doc
checking for references to /build in /nix/store/sahd7232kmsccd2mfhv40vgblqym3q8h-postgresql-11.0-doc...
shrinking RPATHs of ELF executables and libraries in /nix/store/igmrz2109kl7pna2k5f985147skvf48h-postgresql-11.0-man
gzipping man pages under /nix/store/igmrz2109kl7pna2k5f985147skvf48h-postgresql-11.0-man/share/man/
strip is /nix/store/vcc4svb8gy29g4pam2zja6llkbcwsyiq-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/igmrz2109kl7pna2k5f985147skvf48h-postgresql-11.0-man
checking for references to /build in /nix/store/igmrz2109kl7pna2k5f985147skvf48h-postgresql-11.0-man...

@@ -694,7 +694,7 @@ in
# container so that container@.target can get the container
# configuration.
environment.etc =
let mkPortStr = p: p.protocol + ":" + (toString p.hostPort) + ":" + (if p.containerPort == null then toString p.hostPort else toString p.containerPort);
let mkPortStr = p: p.protocol + ":" + (toString p.hostPort) + ":" + (if p.containerPort == null then toString p.hostPort else toString p.containerPort);
Copy link
Member

Choose a reason for hiding this comment

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

Even if I see that this changes nothing, I think it is better for tractability to leave this line unchanged (at least in the context of postgresql updates) (I guess you have automated white space stripping in your text editor).

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Attempted: postgresql_11

Partial log (click to expand)

/nix/store/vkbh8pnvzjdc6r6ii9dksabfsgjspnzd-postgresql-11.0

@lsix lsix merged commit f68cf48 into NixOS:master Oct 30, 2018
@lsix
Copy link
Member

lsix commented Oct 30, 2018

Good for me, merged. Thanks @alyssais for the work, and sorry it took so long.

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Attempted: postgresql_11

Partial log (click to expand)

checking for references to /build in /nix/store/nc8l8kjvxq3q77spggfgcbk4lkikjxgv-postgresql-11.0-lib...
shrinking RPATHs of ELF executables and libraries in /nix/store/sahd7232kmsccd2mfhv40vgblqym3q8h-postgresql-11.0-doc
strip is /nix/store/vcc4svb8gy29g4pam2zja6llkbcwsyiq-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/sahd7232kmsccd2mfhv40vgblqym3q8h-postgresql-11.0-doc
checking for references to /build in /nix/store/sahd7232kmsccd2mfhv40vgblqym3q8h-postgresql-11.0-doc...
shrinking RPATHs of ELF executables and libraries in /nix/store/igmrz2109kl7pna2k5f985147skvf48h-postgresql-11.0-man
gzipping man pages under /nix/store/igmrz2109kl7pna2k5f985147skvf48h-postgresql-11.0-man/share/man/
strip is /nix/store/vcc4svb8gy29g4pam2zja6llkbcwsyiq-binutils-2.30/bin/strip
patching script interpreter paths in /nix/store/igmrz2109kl7pna2k5f985147skvf48h-postgresql-11.0-man
checking for references to /build in /nix/store/igmrz2109kl7pna2k5f985147skvf48h-postgresql-11.0-man...

@thoughtpolice
Copy link
Member

JIT support will be handled by #38698 once it's merged, JFYI.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants