From: | Petr Jelinek <petr(dot)jelinek(at)2ndquadrant(dot)com> |
---|---|
To: | tushar <tushar(dot)ahuja(at)enterprisedb(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: After an error - pg_replication_slot is dropped |
Date: | 2018-02-16 10:32:39 |
Message-ID: | a2ed6e42-439d-c3e9-07c1-aa1b893f4ccb@2ndquadrant.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi,
On 16/02/18 10:51, tushar wrote:
> Hi,
>
> Please refer this straight forward scenario against latest sources of v11.
>
> [centos(at)centos-cpula bin]$ ./psql postgres
> psql (11devel)
> Type "help" for help.
>
> postgres=# SELECT * FROM
> pg_create_logical_replication_slot('regression_slot1', 'test_decoding',
> true);
> slot_name | lsn
> ------------------+-----------
> regression_slot1 | 0/40001E8
> (1 row)
>
> postgres=#
> postgres=# select * from pg_replication_slots;
> slot_name | plugin | slot_type | datoid | database |
> temporary | active | active_pid | xmin | catalog_xmin | restart_lsn |
> confirmed_flush_lsn
> ------------------+---------------+-----------+--------+----------+-----------+--------+------------+------+--------------+-------------+---------------------
>
> regression_slot1 | test_decoding | logical | 13220 | postgres |
> t | t | 28015 | | 557 | 0/40001B0 |
> 0/40001E8
> (1 row)
>
> --Try to again create the same slot , getting an error - which is expected
> postgres=#
> postgres=# SELECT * FROM
> pg_create_logical_replication_slot('regression_slot1', 'test_decoding',
> true);
> ERROR: replication slot "regression_slot1" already exists
> postgres=#
>
> --No slot found
> postgres=# select * from pg_replication_slots;
> slot_name | plugin | slot_type | datoid | database | temporary | active
> | active_pid | xmin | catalog_xmin | restart_lsn | confirmed_flush_lsn
> -----------+--------+-----------+--------+----------+-----------+--------+------------+------+--------------+-------------+---------------------
>
> (0 rows)
>
It's because you are creating temporary slot. Temporary slots are
removed on error, that's a documented behavior.
--
Petr Jelinek http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services
From | Date | Subject | |
---|---|---|---|
Next Message | tushar | 2018-02-16 10:34:56 | Server Crash while executing pg_replication_slot_advance (second time) |
Previous Message | Masahiko Sawada | 2018-02-16 10:26:30 | Re: Server crash in pg_replication_slot_advance function |