Обсуждение: error when creating logical replication slot

Поиск
Список
Период
Сортировка

error when creating logical replication slot

От
Josef Machytka
Дата:
Hi all,
I am implementing logical replication and today during some final tests before implementing it to the production I have got this error when logical replication slot on master was created.

NOTICE:  2019-01-28 09:08:22.081007+00: logical replication slot xxxxx does not exist - creating...
ERROR:  snapshot reference 0x55a52a898340 is not owned by resource owner TopTransaction
CONTEXT:  SQL statement "SELECT pg_create_logical_replication_slot('xxxxx', 'pgoutput')"

In previous tests I always created logical replication slot in the same way and never had any error. For explanation - I create logical replication slot separately otherwise command "create subscription" from replica hang indefinitely if I try to create LRS as part of it (tested several times).

I tried to google for this error but did not find anything which would feel relevant to the context.

Could someone please explain to what does this mean? I cannot afford to have errors on production.

Many thanks

Josef Machytka
Berlin

Re: error when creating logical replication slot

От
Tom Lane
Дата:
Josef Machytka <josef.machytka@gmail.com> writes:
> I am implementing logical replication and today during some final tests
> before implementing it to the production I have got this error when logical
> replication slot on master was created.

> NOTICE:  2019-01-28 09:08:22.081007+00: logical replication slot xxxxx does
> not exist - creating...
> ERROR:  snapshot reference 0x55a52a898340 is not owned by resource owner
> TopTransaction
> CONTEXT:  SQL statement "SELECT pg_create_logical_replication_slot('xxxxx',
> 'pgoutput')"

That's definitely a bug.  Are you on the latest minor release of whichever
release series you're using?  (And which one is that?)  If it is latest,
please see if you can make a self-contained test case that triggers this.

            regards, tom lane


Re: error when creating logical replication slot

От
Josef Machytka
Дата:
Hi. Thanks for answer.

Both databases run on Google Compute Engine VMs with Debian 9, both PGs are "PostgreSQL 11.1 (Debian 11.1-1.pgdg90+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 6.3.0-18+deb9u1) 6.3.0 20170516, 64-bit"

I did several tests with setting logical replication from master to replica always dropping everything and setting it "from scratch" again with exactly the same bash script running plpgsql commands in psql and only during one of these tests got this error. And now I cannot repeat it.

Not sure if it can be important in this context but database processes several thousands of inserts each minute, most of them just 1 record in separate transaction - those are metric data from web widgets.

JM


On Mon, 28 Jan 2019 at 15:15, Tom Lane <tgl@sss.pgh.pa.us> wrote:
Josef Machytka <josef.machytka@gmail.com> writes:
> I am implementing logical replication and today during some final tests
> before implementing it to the production I have got this error when logical
> replication slot on master was created.

> NOTICE:  2019-01-28 09:08:22.081007+00: logical replication slot xxxxx does
> not exist - creating...
> ERROR:  snapshot reference 0x55a52a898340 is not owned by resource owner
> TopTransaction
> CONTEXT:  SQL statement "SELECT pg_create_logical_replication_slot('xxxxx',
> 'pgoutput')"

That's definitely a bug.  Are you on the latest minor release of whichever
release series you're using?  (And which one is that?)  If it is latest,
please see if you can make a self-contained test case that triggers this.

                        regards, tom lane