-
Notifications
You must be signed in to change notification settings - Fork 159
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
Support PG 14 #127
Comments
@jmo-qap Yup, thanks for opening an issue to track this - I will see if I can prioritize this in the near future. |
Hey @lfittl ! We (@jmo-qap and myself) are very interested in seeing libgpg_query support postgres 14 (since that would enable postgres 14 support for pglast). Do you have a rough idea of what changes need to happen to this repo to enable support for postgres 14? Looking at previous postgres "bump" PR's looks like the upgrade process at a super high level is as follows:
If you could provide any input, or share any documentation around this process that I may missed, that would be great! BTW, is there any community slack channels, mailing lists, forum boards, etc for |
Thanks for tackling this @sgreene570 |
@sgreene570 Generally speaking, the complex part is determining whether the fingerprinting and normalization logic need any changes. The core parser itself is usually just a quick run of the This week is particularly busy here, but I'll see if I can set aside some time soon to get up a first version of this that you can help test. Whilst you are welcome to run through the logic yourself (I'd start with that extract_source task), the documentation is rather basic at this point :) Re: Community Slack / etc - good question! We don't have a dedicated Slack for pganalyze, or associated projects, but I do hang out in the Postgres Slack myself (same name as on here), so feel free to ping me there directly with questions. |
Thanks for the info @lfittl ! I took a stab at this and was able to get the patches applied to upstream 14.2. However, I was unable to fix After running I then checked out the latest commit on the If you'd like, I could open a separate issue on the elog.c topic (and maybe even another issue on why |
Ah, looks like my problem was trying to use the |
I've made some progress on this, but not enough to open a preliminary pull request. postgres/postgres@926fa80 |
Chipping away at the compilation errors that arise after running all of the extract/generation scripts, i've found 2 more commits that could be considered "breaking" changes when bumping to PG 14.2: |
As one of my own usages of |
@lfittl have you had the chance to look into this issue at all? I have identified a few upstream breaking commits, but its unclear to me how many more non-trivial upstream commits there are, especially now that PG 14.3 is out the door. |
Pretty swamped currently with getting a release out of the door, but its on my list to look into this as part of our next product sprint here (~ late June is probably a realistic estimate for me to get to this) |
Fwiw, I'd also appreciate a new release with PG14 support since that would allow me to upload pglast and sqlreduce to Debian which has PG14 only, and postgresql-server-dev-13 has already been removed. |
OOC, can you explain why the availability of the PG version affects the possibility to upload them? Isn't pglast basically a statically linked extension, that thus is indipendent from the actual version of PG you use? |
@lelit: Even when pglast is a static lib, we need to build it, and Debian requires that to be done from things that are present within Debian. postgresql-server-dev-14 isn't enough:
Forcing that to use
|
@df7cb: thank you, but I'm still confused: did you have to patch in some way |
@lelit you are right, and I'm sorry for not having forwarded this in the beginning (and then forgetting that it exists). There is indeed a patch in pglast.deb that makes it use the system PG headers instead of the files in the libpg_query source: The problem there is that we can only build-depend on things that are installed as part of some package, not on the source code on other packages (as |
Ah, ok then. Maybe @lfittl may chime in to confirm that libpg_query itself does not alter the PG include files it vendors? Because that would be another problem for you... |
@df7cb: at least one patch seems problematic, as it changes the order of the items of an enum, and that would mean that you should update the related definition in |
Hi @lfittl, any news on this? |
FYI, I have found https://github.com/tlisanti/libpg_query/tree/14-latest in a good shape: while it has some glitches (one cured here, the other related to statements signature), I was able to use that branch to support PG 14 in pglast v4. |
Thanks @lelit for the update (and everyone else for their patience) - and thanks @tlisanti and @wolfgangwalther for their efforts! We've prioritized our effort to get this updated here in the upstream repo as well, @msepga on the pganalyze team is starting to review the open PR (the changes look good from a first review) and also review additional changes by @tlisanti and we should have the official branch updated here soon. |
Closing, as this has been completed in #165 and the Thanks @msepga for driving this release, and again thanks @tlisanti and @wolfgangwalther for their contributions! |
As of 2021-09-30 postgres 14 was released: https://www.postgresql.org/about/news/postgresql-14-released-2318/
There's (even more) new JSON syntax along with several other FUNCTION/PROCEDURE syntax additions.
The text was updated successfully, but these errors were encountered: