pg_pathman
pg_pathman copied to clipboard
installation error: In function ‘partition_filter_begin’
Problem description
При сборке расширения возникает такая ошибка;
PG_CONFIG=/usr/lib/postgresql/12/bin/pg_config sudo make install USE_PGXS=1
gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fno-omit-frame-pointer -fPIC -I/home/psqlPilugins/pg_pathman/src/include -I. -I./ -I/usr/include/postgresql/15/server -I/usr/include/postgresql/internal -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2 -c -o src/partition_filter.o src/partition_filter.c
src/partition_filter.c: In function ‘partition_filter_begin’:
src/partition_filter.c:870:24: error: ‘EState’ {aka ‘struct EState’} has no member named ‘es_result_relation_info’; did you mean ‘es_result_relations’?
870 | current_rri = estate->es_result_relation_info;
| ^~~~~~~~~~~~~~~~~~~~~~~
| es_result_relations
src/partition_filter.c: In function ‘partition_filter_exec’:
src/partition_filter.c:962:11: error: ‘EState’ {aka ‘struct EState’} has no member named ‘es_result_relation_info’; did you mean ‘es_result_relations’?
962 | estate->es_result_relation_info = rri;
| ^~~~~~~~~~~~~~~~~~~~~~~
| es_result_relations
make: *** [
Environment
ubuntu 20.04 postgres 12.13
Very similar issue happened when installing from cloned git repository with Postgresql 15.2 (All related pgsql15 dev libraries were installed):
Description of installation steps:
date # output: Thu Mar 16 09:59:45 PM UTC 2023
git clone https://github.com/postgrespro/pg_pathman.git
cd pg_pathman
pg_config --version # output: PostgreSQL 15.2 (Ubuntu 15.2-1.pgdg22.04+1)
make install USE_PGXS=1
ERROR:
...
gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -g -g -O2 -flto=auto -ffat-lto-objects -flto=auto -ffat-lto-objects -fstack-protector-strong -Wformat -Werror=format-security -fno-omit-frame-pointer -fPIC -I/home/radovan/work/pg_pathman/src/include -I. -I./ -I/usr/include/postgresql/15/server -I/usr/include/postgresql/internal -Wdate-time -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -I/usr/include/libxml2 -c -o src/partition_filter.o src/partition_filter.c
src/partition_filter.c: In function ‘partition_filter_begin’:
src/partition_filter.c:870:31: error: ‘EState’ has no member named ‘es_result_relation_info’; did you mean ‘es_result_relations’?
870 | current_rri = estate->es_result_relation_info;
| ^~~~~~~~~~~~~~~~~~~~~~~
| es_result_relations
src/partition_filter.c: In function ‘partition_filter_exec’:
src/partition_filter.c:962:25: error: ‘EState’ has no member named ‘es_result_relation_info’; did you mean ‘es_result_relations’?
962 | estate->es_result_relation_info = rri;
| ^~~~~~~~~~~~~~~~~~~~~~~
| es_result_relations
make: *** [<builtin>: src/partition_filter.o] Error 1
I have the same issue.