On 2017-04-15 04:47, Erik Rijkers wrote:
>
> 0001-Reserve-global-xmin-for-create-slot-snasphot-export.patch +
> 0002-Don-t-use-on-disk-snapshots-for-snapshot-export-in-l.patch+
> 0003-Prevent-snapshot-builder-xmin-from-going-backwards.patch +
> 0004-Fix-xl_running_xacts-usage-in-snapshot-builder.patch +
> 0005-Skip-unnecessary-snapshot-builds.patch
I am now using these newer patches:
https://www.postgresql.org/message-id/30242bc6-eca4-b7bb-670e-8d0458753a8c%402ndquadrant.com
> It builds fine, but when I run the old pbench-over-logical-replication
> test I get:
>
> TRAP: FailedAssertion("!(entry->trans == ((void *)0))", File:
> "pgstat.c", Line: 828)
To get that error:
--------------
#!/bin/sh
port1=6972 port2=6973 scale=25 clients=16 duration=60
echo "drop table if exists pgbench_accounts; drop table if exists pgbench_branches; drop table if
existspgbench_tellers; drop table if exists pgbench_history;" | psql -qXp $port1 \
&& echo "drop table if exists pgbench_accounts; drop table if exists pgbench_branches; drop table if
existspgbench_tellers; drop table if exists pgbench_history;" | psql -qXp $port2 \
&& pgbench -p $port1 -qis ${scale//_/} && echo " alter table pgbench_history add column hid serial primary key;
" | psql -q1Xp $port1 \ && pg_dump -F c -p $port1 \ --exclude-table-data=pgbench_history \
--exclude-table-data=pgbench_accounts\ --exclude-table-data=pgbench_branches \
--exclude-table-data=pgbench_tellers \ -t pgbench_history \ -t pgbench_accounts \ -t
pgbench_branches\ -t pgbench_tellers \ | pg_restore -1 -p $port2 -d testdb
appname=pgbench_derail
echo "create publication pub1 for all tables;" | psql -p $port1 -aqtAX
echo "create subscription sub1 connection 'port=${port1}
application_name=${appname}' publication pub1 with (disabled);
alter subscription sub1 enable;
" | psql -p $port2 -aqtAX
echo "-- pgbench -p $port1 -c $clients -T $duration -n -- scale $scale
" pgbench -p $port1 -c $clients -T $duration -n
--------------
Erik Rijkers