ibarwick / firebird_fdw

A PostgreSQL foreign data wrapper (FDW) for Firebird - latest version 1.4.0 (2024-05-11)
https://sql-info.de/postgresql/firebird-fdw/index.html
Other
36 stars 9 forks source link

PostgreSQL 14 support #23

Closed devrimgunduz closed 2 years ago

devrimgunduz commented 3 years ago

Hi,

v14 entered beta. 1.2.1 fails to build against v14. Below is the log. Can you please take a look?

Regards, Devrim

/usr/lib64/ccache/clang -Wno-ignored-attributes -fno-strict-aliasing -fwrapv -O2 -I/usr/include/firebird -I. -I./ -I/usr/pgsql-14/include/server -I/usr/pgsql-14/include/internal -D_GNU_SOURCE -I/usr/include/libxml2 -I/usr/include -flto=thin -emit-llvm -c -o src/options.bc src/options.c src/firebird_fdw.c: In function 'firebird_fdw_handler': src/firebird_fdw.c:760:45: warning: assignment to 'AddForeignUpdateTargets_function' {aka 'void ()(PlannerInfo , unsigned int, RangeTblEntry , struct RelationData )'} from incompatible pointer type 'void ()(Query , RangeTblEntry , struct RelationData )' [-Wincompatible-pointer-types] 760 | fdwroutine->AddForeignUpdateTargets = firebirdAddForeignUpdateTargets; | ^ src/firebird_fdw.c: In function 'firebirdBeginForeignModify': src/firebird_fdw.c:2320:80: error: 'ModifyTableState' has no member named 'mt_plans' 2320 | mtstate->mt_plans[subplan_index]->plan, | ^~ src/firebird_fdw.c: In function 'firebirdBeginForeignInsert': src/firebird_fdw.c:2766:65: error: 'ModifyTableState' has no member named 'mt_whichplan' 2766 | resultRelInfo > mtstate->resultRelInfo + mtstate->mt_whichplan) | ^~ make[1]: [: src/firebird_fdw.o] Error 1 make[1]: Waiting for unfinished jobs.... src/firebird_fdw.c:760:38: warning: incompatible function pointer types assigning to 'AddForeignUpdateTargets_function' (aka 'void ()(struct PlannerInfo , unsigned int, struct RangeTblEntry , struct RelationData )') from 'void (Query , RangeTblEntry , Relation)' (aka 'void (struct Query , struct RangeTblEntry , struct RelationData *)') [-Wincompatible-function-pointer-types] fdwroutine->AddForeignUpdateTargets = firebirdAddForeignUpdateTargets; ^ ~~~~~~~ src/firebird_fdw.c:2320:19: error: no member named 'mt_plans' in 'struct ModifyTableState' mtstate->mt_plans[subplan_index]->plan,


src/firebird_fdw.c:2766:53: error: no member named 'mt_whichplan' in 'struct ModifyTableState'
resultRelInfo > mtstate->resultRelInfo + mtstate->mt_whichplan)
~~~~~~~  ^
1 warning and 2 errors generated.
make[1]: *** [/usr/pgsql-14/lib/pgxs/src/makefiles/../../src/Makefile.global:1051: src/firebird_fdw.bc] Error 1
ibarwick commented 3 years ago

FYI I'm planning a 1.3 release with Pg 14 support, have previously made changes in the master branch (e.g. 3c5e1a67b0bf1aa722bf6869607e94489b2ff819 ) but haven't had time to look at this recently. Will hopefully have more time later in June / July.

devrimgunduz commented 2 years ago

ping :) @ibarwick

ibarwick commented 2 years ago

@devrimgunduz alas, the whole "not having time" situation has not really ameliorated itself and I haven't been able to any new features which would justify a 1.3 release, so here's a 1.2.2 release with PostgreSQL 14 support and miscellaneous minor fixes.

devrimgunduz commented 2 years ago

@ibarwick Thanks a lot! Committed to repo.