-# contrib/worker_spi/Makefile
+# contrib/bdr/Makefile
subdir = contrib/bdr
top_builddir = ../..
+
+MODULE_big = bdr
+PG_CPPFLAGS = -I$(libpq_srcdir)
+SHLIB_LINK = $(libpq)
+SHLIB_PREREQS = submake-libpq
+OBJS = \
+ bdr.o \
+ bdr_apply.o \
+ bdr_catalogs.o \
+ bdr_conflict_handlers.o \
+ bdr_conflict_logging.o \
+ bdr_compat.o \
+ bdr_commandfilter.o \
+ bdr_count.o \
+ bdr_executor.o \
+ bdr_init_replica.o \
+ bdr_locks.o \
+ bdr_output.o \
+ bdr_relcache.o \
+ bdr_seq.o
+
include $(top_builddir)/src/Makefile.global
include $(top_srcdir)/contrib/contrib-global.mk
bdr_version.h: bdr_version.h.in
sed '0,/BDR_VERSION_DATE/s,\(BDR_VERSION_DATE\).*,\1 "$(DATE)",;0,/BDR_VERSION_GITHASH/s,\(BDR_VERSION_GITHASH\).*,\1 "$(GITHASH)",' $< >$@
-%%: all
+bdr.o: bdr_version.h
+
+# Disabled because these tests require "wal_level=logical", which
+# typical installcheck users do not have (e.g. buildfarm clients).
+installcheck:;
+
+submake-regress:
+ $(MAKE) -C $(top_builddir)/src/test/regress
+
+submake-btree_gist:
+ $(MAKE) -C $(top_builddir)/contrib/btree_gist
+
+check: all | submake-regress submake-btree_gist regresscheck
-all: bdr_version.h
- $(MAKE) -f $(top_srcdir)/contrib/bdr/output.mk $(MAKECMDGOALS)
- $(MAKE) -f $(top_srcdir)/contrib/bdr/worker.mk $(MAKECMDGOALS)
- $(MAKE) -f $(top_srcdir)/contrib/bdr/bdr_init_copy.mk $(MAKECMDGOALS)
+REGRESS_DDL_CHECKS=ddl/create ddl/alter_table
-clean: all
- rm -f version.h
+regresscheck:
+ $(pg_regress_check) \
+ --temp-config $(top_srcdir)/contrib/bdr/bdr_ddlregress.conf \
+ --temp-install=./tmp_check \
+ --extra-install=contrib/btree_gist \
+ --extra-install=contrib/bdr \
+ $(REGRESS_DDL_CHECKS)
-check: all
+PHONY: submake-regress
# phony target...
/* acquire remote decoding slot */
resetStringInfo(&query);
appendStringInfo(&query, "CREATE_REPLICATION_SLOT \"%s\" LOGICAL %s",
- NameStr(*slot_name), "bdr_output");
+ NameStr(*slot_name), "bdr");
elog(DEBUG3, "Sending replication command: %s", query.data);
schema_oid = GetSysCacheOid1(NAMESPACENAME, CStringGetDatum("bdr"));
if (schema_oid == InvalidOid)
ereport(ERROR, (errcode(ERRCODE_OBJECT_NOT_IN_PREREQUISITE_STATE),
- errmsg("No bdr schema is present in database %s, cannot create a bdr_output slot",
+ errmsg("No bdr schema is present in database %s, cannot create a bdr slot",
get_database_name(MyDatabaseId)),
errhint("There is no bdr.bdr_connections entry for this database on the target node or bdr is not in shared_preload_libraries")));
PGresult *res;
appendPQExpBuffer(query, "CREATE_REPLICATION_SLOT \"%s\" LOGICAL %s",
- NameStr(*slot_name), "bdr_output");
+ NameStr(*slot_name), "bdr");
res = PQexec(conn, query->data);
#include "utils/timestamp.h"
#include "utils/typcache.h"
-PG_MODULE_MAGIC;
-
-extern void _PG_init(void);
extern void _PG_output_plugin_init(OutputPluginCallbacks *cb);
typedef struct
static void write_tuple(BdrOutputData *data, StringInfo out, Relation rel,
HeapTuple tuple);
-void
-_PG_init(void)
-{
-}
-
/* specify output plugin callbacks */
void
_PG_output_plugin_init(OutputPluginCallbacks *cb)
+++ /dev/null
-# contrib/bdr/output.mk
-
-MODULE_big = bdr_output
-OBJS = \
- bdr_catalogs.o \
- bdr_compat.o \
- bdr_locks.o \
- bdr_output.o
-
-PG_CPPFLAGS = -I$(libpq_srcdir)
-SHLIB_LINK = $(libpq)
-SHLIB_PREREQS = submake-libpq
-
-ifdef USE_PGXS
-PG_CONFIG = pg_config
-PGXS := $(shell $(PG_CONFIG) --pgxs)
-include $(PGXS)
-else
-subdir = contrib/bdr
-top_builddir = ../..
-include $(top_builddir)/src/Makefile.global
-include $(top_srcdir)/contrib/contrib-global.mk
-endif
+++ /dev/null
-# contrib/bdr/worker.mk
-
-MODULE_big = bdr
-OBJS = \
- bdr.o \
- bdr_apply.o \
- bdr_catalogs.o \
- bdr_conflict_handlers.o \
- bdr_conflict_logging.o \
- bdr_compat.o \
- bdr_commandfilter.o \
- bdr_count.o \
- bdr_executor.o \
- bdr_init_replica.o \
- bdr_locks.o \
- bdr_relcache.o \
- bdr_seq.o
-
-EXTENSION = bdr
-DATA = bdr--0.5.sql
-DOCS = bdr.conf.sample README.bdr
-
-SCRIPTS = scripts/bdr_initial_load
-
-PG_CPPFLAGS = -I$(libpq_srcdir)
-SHLIB_LINK = $(libpq)
-SHLIB_PREREQS = submake-libpq
-
-ifdef USE_PGXS
-PG_CONFIG = pg_config
-PGXS := $(shell $(PG_CONFIG) --pgxs)
-include $(PGXS)
-else
-subdir = contrib/bdr
-top_builddir = ../..
-include $(top_builddir)/src/Makefile.global
-include $(top_srcdir)/contrib/contrib-global.mk
-endif
-
-# Disabled because these tests require "wal_level=logical", which
-# typical installcheck users do not have (e.g. buildfarm clients).
-installcheck:;
-
-submake-regress:
- $(MAKE) -C $(top_builddir)/src/test/regress
-
-submake-btree_gist:
- $(MAKE) -C $(top_builddir)/contrib/btree_gist
-
-check: all | submake-regress submake-btree_gist regresscheck
-
-REGRESS_DDL_CHECKS=ddl/create ddl/alter_table
-
-regresscheck:
- $(pg_regress_check) \
- --temp-config $(top_srcdir)/contrib/bdr/bdr_ddlregress.conf \
- --temp-install=./tmp_check \
- --extra-install=contrib/btree_gist \
- --extra-install=contrib/bdr \
- $(REGRESS_DDL_CHECKS)
-
-PHONY: submake-regress
GenerateContribSqlFiles('pgcrypto', $mf);
# so is bdr
- my $bdr_output = $solution->AddProject('bdr_output', 'dll', 'misc');
- $bdr_output->AddFiles('contrib\bdr',
- 'bdr_compat.c',
- 'bdr_catalogs.c',
- 'bdr_locks.c',
- 'bdr_output.c');
- $bdr_output->AddReference($postgres);
- $bdr_output->AddLibrary('wsock32.lib');
-
- my $bdr_apply = $solution->AddProject('bdr_apply', 'dll', 'misc');
- $bdr_apply->AddFiles('contrib\bdr',
- 'bdr.c',
- 'bdr_apply.c',
- 'bdr_catalogs.c',
- 'bdr_commandfilter.c',
- 'bdr_compat.c',
- 'bdr_conflict_handlers.c',
- 'bdr_conflict_logging.c',
- 'bdr_count.c',
- 'bdr_executor.c',
- 'bdr_init_replica.c',
- 'bdr_locks.c',
- 'bdr_relcache.c',
- 'bdr_seq.c');
- $bdr_apply->AddReference($postgres);
- $bdr_apply->AddLibrary('wsock32.lib');
- $bdr_apply->AddIncludeDir('src\interfaces\libpq');
- $bdr_apply->AddReference($libpq);
+ my $bdr = $solution->AddProject('bdr', 'dll', 'misc');
+ $bdr->AddFiles('contrib\bdr',
+ 'bdr.c',
+ 'bdr_apply.c',
+ 'bdr_catalogs.c',
+ 'bdr_conflict_handlers.c',
+ 'bdr_conflict_logging.c',
+ 'bdr_commandfilter.c',
+ 'bdr_compat.c',
+ 'bdr_count.c',
+ 'bdr_executor.c',
+ 'bdr_init_replica.c',
+ 'bdr_locks.c',
+ 'bdr_output.c',
+ 'bdr_relcache.c',
+ 'bdr_seq.c');
+ $bdr->AddReference($postgres);
+ $bdr->AddLibrary('wsock32.lib');
+ $bdr->AddIncludeDir('src\interfaces\libpq');
+ $bdr->AddReference($libpq);
my $D;
opendir($D, 'contrib') || croak "Could not opendir on contrib!\n";