Logical decoding (contrib/test_decoding) walsender broken in 9.5 master?
Hi all
It appears that logical decoding may be broken in 9.5 at the moment.
With HEAD at f6caf5a:
./configure --enable-debug --enable-cassert --prefix=/home/craig/pg/95
CFLAGS="-Og -ggdb -fno-omit-frame-pointer"
make clean install
make -C contrib/test_decoding clean install
PGPORT=5142 PATH=/home/craig/pg/95/bin:$PATH initdb -D ~/tmp/slottest95
PGPORT=5142 PATH=/home/craig/pg/95/bin:$PATH postgres -D ~/tmp/slottest95
and in another session:
psql -p 5142 -c 'SELECT pg_create_logical_replication_slot('test',
'test_decoding');'
in yet another:
PGPORT=5142 PATH=$HOME/pg/95/bin:$PATH pg_recvlogical -d postgres -S test
--start -f -
and back in the psql session do some work:
psql -p 5142 -c 'CREATE TABLE x AS SELECT xx FROM generate_series(1,10000)
xx;'
This works fine in REL9_4_STABLE at a44e54c.
Decoding over the SQL protocol works fine, and "make check" in
contrib/test_decoding passes without errors. This issue only arises in
decoding in a walsender.
I haven't bisected it back to a specific change yet, I just wanted to give
early heads-up. Also, our testing clearly needs to cover logical decoding
over walsenders.
See attachment for the bt.
--
Craig Ringer http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services
Attachments:
On Thu, Apr 2, 2015 at 3:48 PM, Craig Ringer <craig@2ndquadrant.com> wrote:
Also, our testing clearly needs to cover logical decoding over walsenders.
Noted.
--
Michael
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers
I started bisecting from e6df2e1 (stamp 9.4beta1, good) to 095d401 (bad).
The problem revision appears to be 9402869:
commit 9402869
Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
Date: Sat Jan 17 01:14:32 2015 +0200
Advance backend's advertised xmin more aggressively.
which is somewhat logical given the crash location and symptoms.
Bisection procedure used:
For each step:
./configure --enable-debug --enable-cassert --prefix=/home/craig/pg/95
CFLAGS="-Og -ggdb -fno-omit-frame-pointer" && make clean install && make -C
contrib/test_decoding/ clean install && rm -rf ~/tmp/slottest95 &&
PATH=$HOME/pg/95/bin:$PATH initdb -D ~/tmp/slottest95 && cp
~/tmp/{postgresql.conf,pg_hba.conf} ~/tmp/slottest95 &&
PATH=$HOME/pg/95/bin:$PATH PGPORT=5123 postgres -D ~/tmp/slottest95/
then manually:
psql -p 5123 -c 'SELECT pg_create_logical_replication_slot('test',
'test_decoding');'
PGPORT=5123 PATH=$HOME/pg/95/bin:$PATH pg_recvlogical -d postgres -S test
--start -f -
psql -p 5123 -c 'CREATE TABLE x AS SELECT xx FROM generate_series(1,10000)
xx;'
I have to go out now; I'll follow up further but wanted to update promptly.
On Thu, Apr 2, 2015 at 5:35 PM, Craig Ringer <craig@2ndquadrant.com> wrote:
I started bisecting from e6df2e1 (stamp 9.4beta1, good) to 095d401 (bad).
The problem revision appears to be 9402869:commit 9402869
Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
Date: Sat Jan 17 01:14:32 2015 +0200Advance backend's advertised xmin more aggressively.
This rings a bell, I reported a similar issue some weeks back:
/messages/by-id/CAB7nPqQSdx7coHk0D6G=mkJntGYjXPDw+PWisKKSsAeZFTskvg@mail.gmail.com
And there is a patch.
--
Michael
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers