Skip to content

PostgreSQL 10 support? #1

@ArturFormella

Description

@ArturFormella

Hello!
I have the following issue with PostgreSQL 10:

/pg_jinx$ make USE_PGXS=1
gcc -g -std=gnu99 -Wall -Wmissing-prototypes -Wpointer-arith -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -std=gnu99 -fpic  -I. -I/usr/lib/jvm/java-8-oracle/include -I/usr/lib/jvm/java-8-oracle/include/linux -I/usr/include/libxml2 -I/usr/include/postgresql/server -I/usr/lib/jvm/java-7-oracle/include -I/usr/lib/jvm/java-7-oracle/include/linux -c -o pg_jinx.o pg_jinx.c
pg_jinx.c: In function ‘fdw_handler’:
pg_jinx_fdw.c:249:10: warning: unused variable ‘colcount’ [-Wunused-variable]
     jint colcount;
          ^
pg_jinx_fdw.c: In function ‘javaGetForeignPaths’:
pg_jinx_fdw.c:300:66: error: incompatible type for argument 3 of ‘create_foreignscan_path’
  add_path(baserel, (Path*)create_foreignscan_path(root, baserel, baserel->rows, startup_cost, total_cost, NIL, NULL, (void *)baserel->fdw_private));
                                                                  ^
In file included from ./pg_jinx.h:71:0,
                 from pg_jinx_fdw.c:2:
/usr/include/postgresql/server/optimizer/pathnode.h:107:21: note: expected ‘PathTarget * {aka struct PathTarget *}’ but argument is of type ‘double’
 extern ForeignPath *create_foreignscan_path(PlannerInfo *root, RelOptInfo *rel,
                     ^
In file included from /usr/include/postgresql/server/access/tupdesc.h:19:0,
                 from /usr/include/postgresql/server/funcapi.h:20,
                 from ./pg_jinx.h:28,
                 from pg_jinx_fdw.c:2:
/usr/include/postgresql/server/nodes/pg_list.h:69:18: error: incompatible type for argument 6 of ‘create_foreignscan_path’
 #define NIL      ((List *) NULL)
                  ^
pg_jinx_fdw.c:300:107: note: in expansion of macro ‘NIL’
  add_path(baserel, (Path*)create_foreignscan_path(root, baserel, baserel->rows, startup_cost, total_cost, NIL, NULL, (void *)baserel->fdw_private));
                                                                                                           ^
In file included from ./pg_jinx.h:71:0,
                 from pg_jinx_fdw.c:2:
/usr/include/postgresql/server/optimizer/pathnode.h:107:21: note: expected ‘Cost {aka double}’ but argument is of type ‘List * {aka struct List *}’
 extern ForeignPath *create_foreignscan_path(PlannerInfo *root, RelOptInfo *rel,
                     ^
pg_jinx_fdw.c:300:27: error: too few arguments to function ‘create_foreignscan_path’
  add_path(baserel, (Path*)create_foreignscan_path(root, baserel, baserel->rows, startup_cost, total_cost, NIL, NULL, (void *)baserel->fdw_private));
                           ^
In file included from ./pg_jinx.h:71:0,
                 from pg_jinx_fdw.c:2:
/usr/include/postgresql/server/optimizer/pathnode.h:107:21: note: declared here
 extern ForeignPath *create_foreignscan_path(PlannerInfo *root, RelOptInfo *rel,
                     ^
pg_jinx_fdw.c: In function ‘javaGetForeignPlan’:
pg_jinx_fdw.c:311:10: error: too few arguments to function ‘make_foreignscan’
  return (make_foreignscan(tlist, scan_clauses, scan_relid, NIL,
          ^
In file included from ./pg_jinx.h:73:0,
                 from pg_jinx_fdw.c:2:
/usr/include/postgresql/server/optimizer/planmain.h:51:21: note: declared here
 extern ForeignScan *make_foreignscan(List *qptlist, List *qpqual,
                     ^
In file included from /usr/include/postgresql/server/access/tupdesc.h:19:0,
                 from /usr/include/postgresql/server/funcapi.h:20,
                 from ./pg_jinx.h:28,
                 from pg_jinx_fdw.c:2:
pg_jinx_fdw.c: In function ‘javaGetForeignRelSize’:
pg_jinx_fdw.c:353:24: error: ‘RelOptInfo {aka struct RelOptInfo}’ has no member named ‘reltargetlist’
     foreach(lc, baserel->reltargetlist) {
                        ^
/usr/include/postgresql/server/nodes/pg_list.h:162:26: note: in definition of macro ‘foreach’
  for ((cell) = list_head(l); (cell) != NULL; (cell) = lnext(cell))
                          ^
pg_jinx_fdw.c:355:25: error: too many arguments to function ‘pull_var_clause’
   List *targetcolumns = pull_var_clause(node, PVC_RECURSE_AGGREGATES, PVC_RECURSE_PLACEHOLDERS);
                         ^
In file included from ./pg_jinx.h:74:0,
                 from pg_jinx_fdw.c:2:
/usr/include/postgresql/server/optimizer/var.h:37:14: note: declared here
 extern List *pull_var_clause(Node *node, int flags);
              ^
pg_jinx_fdw.c:363:28: error: too many arguments to function ‘pull_var_clause’
   List    *targetcolumns = pull_var_clause((Node *) node->clause, PVC_RECURSE_AGGREGATES, PVC_RECURSE_PLACEHOLDERS);
                            ^
In file included from ./pg_jinx.h:74:0,
                 from pg_jinx_fdw.c:2:
/usr/include/postgresql/server/optimizer/var.h:37:14: note: declared here
 extern List *pull_var_clause(Node *node, int flags);
              ^
In file included from pg_jinx_fdw.c:2:0:
pg_jinx_fdw.c:377:62: warning: passing argument 2 of ‘check_exception’ makes pointer from integer without a cast [-Wint-conversion]
         CHECK_EXCEPTION("%s\n storing selection element %d", ri);
                                                              ^
./pg_jinx.h:97:56: note: in definition of macro ‘CHECK_EXCEPTION’
 #define CHECK_EXCEPTION(MSG, ARG) check_exception(MSG, ARG)
                                                        ^
pg_jinx_fdw.c:21:6: note: expected ‘const char *’ but argument is of type ‘int’
 void check_exception(const char *MSG, const char *arg) {
      ^
pg_jinx_fdw.c:393:13: error: ‘RelOptInfo {aka struct RelOptInfo}’ has no member named ‘width’
     baserel -> width = rx[1]; // number of bytes per row
             ^
pg_jinx_fdw.c: In function ‘javaGetForeignPlan’:
pg_jinx_fdw.c:313:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^
make: *** [pg_jinx_fdw.o] Error 1
~/pg_jinx$ pg_config
BINDIR = /usr/lib/postgresql/10/bin
DOCDIR = /usr/share/doc/postgresql
HTMLDIR = /usr/share/doc/postgresql
INCLUDEDIR = /usr/include/postgresql
PKGINCLUDEDIR = /usr/include/postgresql
INCLUDEDIR-SERVER = /usr/include/postgresql/server
LIBDIR = /usr/local/pgsql/lib
PKGLIBDIR = /usr/local/pgsql/lib
LOCALEDIR = /usr/share/locale
MANDIR = /usr/share/man
SHAREDIR = /usr/share/postgresql/10
SYSCONFDIR = /etc/postgresql-common
PGXS = /usr/local/pgsql/lib/pgxs/src/makefiles/pgxs.mk
CONFIGURE = '--with-icu' '--with-pam' '--with-openssl' '--with-libxml' '--with-libxslt' '--with-tclconfig=/usr/lib/x86_64-linux-gnu/tcl8.6' '--with-includes=/usr/include/tcl8.6' 'PYTHON=/usr/bin/python' '--sysconfdir=/etc/postgresql-common' '--datarootdir=/usr/share/' '--datadir=/usr/share/postgresql/10' '--bindir=/usr/lib/postgresql/10/bin' '--includedir=/usr/include/postgresql/' '--with-uuid=e2fs' '--with-gssapi' '--with-pgport=5010' '--without-docdir' '--enable-thread-safety' '--disable-debug' '--with-ldap' '--with-selinux' '--with-krb5' 'CPPFLAGS=-D_FORTIFY_SOURCE=2' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -L/usr/lib/mit-krb5 -L/usr/lib/x86_64-linux-gnu/mit-krb5' 'CFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -I/usr/include/mit-krb5 -fPIC -pie -fno-omit-frame-pointer' '--with-gnu-ld'
CC = gcc
CPPFLAGS = -DFRONTEND -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2 -I/usr/include/tcl8.6 -I/usr/include/x86_64-linux-gnu
CFLAGS = -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -I/usr/include/mit-krb5 -fPIC -pie -fno-omit-frame-pointer
CFLAGS_SL = -fPIC
LDFLAGS = -L../../src/common -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -L/usr/lib/mit-krb5 -L/usr/lib/x86_64-linux-gnu/mit-krb5 -Wl,--as-needed -Wl,-rpath,'/usr/local/pgsql/lib',--enable-new-dtags
LDFLAGS_EX =
LDFLAGS_SL =
LIBS = -lpgcommon -lpgport -lpthread -lselinux -lxslt -lxml2 -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lrt -lcrypt -ldl -lm
VERSION = PostgreSQL 10beta1

Could you help me somehow? :)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions