postgresql/contrib/postgres_fdw/meson.build
Fujii Masao c297a47c5f postgres_fdw: Add "used_in_xact" column to postgres_fdw_get_connections().
This commit extends the postgres_fdw_get_connections() function to
include a new used_in_xact column, indicating whether each connection
is used in the current transaction.

This addition is particularly useful for the upcoming feature that
will check if connections are closed. By using those information,
users can verify if postgres_fdw connections used in a transaction
remain open. If any connection is closed, the transaction cannot
be committed successfully. In this case users can roll back it
immediately without waiting for transaction end.

The SQL API for postgres_fdw_get_connections() is updated by
this commit and may change in the future. To handle compatibility
with older SQL declarations, an API versioning system is introduced,
allowing the function to behave differently based on the API version.

Author: Hayato Kuroda
Reviewed-by: Fujii Masao
Discussion: https://postgr.es/m/be9382f7-5072-4760-8b3f-31d6dffa8d62@oss.nttdata.com
2024-07-26 22:15:51 +09:00

45 lines
1.0 KiB
Meson

# Copyright (c) 2022-2024, PostgreSQL Global Development Group
postgres_fdw_sources = files(
'connection.c',
'deparse.c',
'option.c',
'postgres_fdw.c',
'shippable.c',
)
if host_system == 'windows'
postgres_fdw_sources += rc_lib_gen.process(win32ver_rc, extra_args: [
'--NAME', 'postgres_fdw',
'--FILEDESC', 'postgres_fdw - foreign data wrapper for PostgreSQL',])
endif
postgres_fdw = shared_module('postgres_fdw',
postgres_fdw_sources,
kwargs: contrib_mod_args + {
'dependencies': contrib_mod_args['dependencies'] + [libpq],
},
)
contrib_targets += postgres_fdw
install_data(
'postgres_fdw.control',
'postgres_fdw--1.0.sql',
'postgres_fdw--1.0--1.1.sql',
'postgres_fdw--1.1--1.2.sql',
kwargs: contrib_data_args,
)
tests += {
'name': 'postgres_fdw',
'sd': meson.current_source_dir(),
'bd': meson.current_build_dir(),
'regress': {
'sql': [
'postgres_fdw',
'query_cancel',
],
'regress_args': ['--dlpath', meson.build_root() / 'src/test/regress'],
},
}