aws / postgresql-logfdw

A PostgreSQL extension that adds a foreign data wrapper around the PostgreSQL logs
Apache License 2.0
22 stars 6 forks source link

Add PostgreSQL 17 support #14

Closed Vonng closed 1 month ago

Vonng commented 1 month ago

Describe the problem

Describe the proposal

$ rpmbuild --with debuginfo --define "pgmajorversion 17" -ba ~/rpmbuild/SPECS/log_fdw.spec
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.scUxgp
+ umask 022
+ cd /home/vagrant/rpmbuild/BUILD
+ cd /home/vagrant/rpmbuild/BUILD
+ rm -rf log-fdw-1.4
+ /usr/bin/gzip -dc /home/vagrant/rpmbuild/SOURCES/log-fdw-1.4.tar.gz
+ /usr/bin/tar -xof -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd log-fdw-1.4
+ /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ exit 0
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.bYZh4u
+ umask 022
+ cd /home/vagrant/rpmbuild/BUILD
+ cd log-fdw-1.4
+ PATH=/usr/pgsql-17/bin:/home/vagrant/.cargo/bin:/home/vagrant/.local/bin:/home/vagrant/bin:/usr/share/Modules/bin:/usr/lib64/ccache:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin
+ /usr/bin/make USE_PGXS=1 -j10
gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -fvisibility=hidden -I. -I./ -I/usr/pgsql-17/include/server -I/usr/pgsql-17/include/internal  -D_GNU_SOURCE -I/usr/include/libxml2  -I/usr/include  -c -o log_fdw.o log_fdw.c
/usr/bin/clang -Wno-ignored-attributes -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-unused-command-line-argument -Wno-compound-token-split-by-macro -O2  -I. -I./ -I/usr/pgsql-17/include/server -I/usr/pgsql-17/include/internal  -D_GNU_SOURCE -I/usr/include/libxml2  -I/usr/include -flto=thin -emit-llvm -c -o log_fdw.bc log_fdw.c
log_fdw.c:425:19: error: too few arguments to function call, expected 11, have 10
  417 |                          create_foreignscan_path(root, baserel,
      |                          ~~~~~~~~~~~~~~~~~~~~~~~
  418 |                                                                          NULL,  /* default pathtarget */
  419 |                                                                          baserel->rows,
  420 |                                                                          startup_cost,
  421 |                                                                          total_cost,
  422 |                                                                          NIL,   /* no pathkeys */
  423 |                                                                          baserel->lateral_relids,
  424 |                                                                          NULL,  /* no extra plan */
  425 |                                                                          coptions));
      |                                                                                  ^
/usr/pgsql-17/include/server/optimizer/pathnode.h:125:21: note: 'create_foreignscan_path' declared here
  125 | extern ForeignPath *create_foreignscan_path(PlannerInfo *root, RelOptInfo *rel,
      |                     ^                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  126 |                                                                                         PathTarget *target,
      |                                                                                         ~~~~~~~~~~~~~~~~~~~
  127 |                                                                                         double rows, Cost startup_cost, Cost total_cost,
      |                                                                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  128 |                                                                                         List *pathkeys,
      |                                                                                         ~~~~~~~~~~~~~~~
  129 |                                                                                         Relids required_outer,
      |                                                                                         ~~~~~~~~~~~~~~~~~~~~~~
  130 |                                                                                         Path *fdw_outerpath,
      |                                                                                         ~~~~~~~~~~~~~~~~~~~~
  131 |                                                                                         List *fdw_restrictinfo,
      |                                                                                         ~~~~~~~~~~~~~~~~~~~~~~~
  132 |                                                                                         List *fdw_private);
      |                                                                                         ~~~~~~~~~~~~~~~~~
1 error generated.
make: *** [/usr/pgsql-17/lib/pgxs/src/makefiles/../../src/Makefile.global:1085: log_fdw.bc] Error 1
make: *** Waiting for unfinished jobs....
log_fdw.c: In function 'fileGetForeignPaths':
log_fdw.c:417:5: error: too few arguments to function 'create_foreignscan_path'
     create_foreignscan_path(root, baserel,
     ^~~~~~~~~~~~~~~~~~~~~~~
In file included from log_fdw.c:37:
/usr/pgsql-17/include/server/optimizer/pathnode.h:125:21: note: declared here
 extern ForeignPath *create_foreignscan_path(PlannerInfo *root, RelOptInfo *rel,
                     ^~~~~~~~~~~~~~~~~~~~~~~
make: *** [<builtin>: log_fdw.o] Error 1
error: Bad exit status from /var/tmp/rpm-tmp.bYZh4u (%build)

RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.bYZh4u (%build)
jkatz commented 1 month ago

@Vonng Thank you for reporting. This is now resolved in https://github.com/aws/postgresql-logfdw/commit/a6d7f62e52332078c32d8b5802833e3cb2440578.