Logical Replication: SELECT pg_catalog.set_config Statement - Mailing list pgsql-general

From Hannes Kühtreiber
Subject Logical Replication: SELECT pg_catalog.set_config Statement
Date
Msg-id 8e974635-8048-4e28-8c42-62248dcac9b5@synedra.com
Whole thread Raw
Responses Re: Logical Replication: SELECT pg_catalog.set_config Statement
List pgsql-general
Hello everybody,

not sure where to post this, general seems most appropriate.

We have tried logical replication in a test-setup, and it appears to 
work fine.
However, the following statement keeps running:

SELECT pg_catalog.set_config('search_path', '', false);

It is issued by the user 'subscriber' we have created for the subscription. Originally it only had the 'Replication'
role,but we have subsequently made it Superuser.
 
However, the behaviour is the same.

                               List of roles
  Role name  |                   Attributes                   | Member of
------------+------------------------------------------------+-----------
  postgres   | Superuser, Create role, Create DB, Replication | {}
  subscriber | Superuser, Replication                         | {}

Strangely, when I log in as subscriber and query the searchpath, the result is 'public'
I can then execute the above statement, and it sets the search_path to ''

At the next restart, the statement pops up again, and hangs ....
Here is the log:
2021-05-17 16:08:03.595 CEST -usztestlogrepsub@10.139.0.41  <mailto:usztestlogrepsub@10.139.0.41>: LOG:  statement:
SELECTpg_catalog.set_config('search_path', '', false);
 
2021-05-17 16:08:03.596 CEST -usztestlogrepsub@10.139.0.41  <mailto:usztestlogrepsub@10.139.0.41>: LOG:  received
replicationcommand: IDENTIFY_SYSTEM
 
2021-05-17 16:08:03.596 CEST -usztestlogrepsub@10.139.0.41  <mailto:usztestlogrepsub@10.139.0.41>: LOG:  received
replicationcommand: START_REPLICATION SLOT "usztestlogrepsub" LOGICAL E51/EC041228 (proto_version '1',
publication_names'"usztestlogreppub"')
 
2021-05-17 16:08:03.597 CEST -usztestlogrepsub@10.139.0.41  <mailto:usztestlogrepsub@10.139.0.41>: LOG:  starting
logicaldecoding for slot "usztestlogrepsub"
 
2021-05-17 16:08:03.597 CEST -usztestlogrepsub@10.139.0.41  <mailto:usztestlogrepsub@10.139.0.41>: DETAIL:  Streaming
transactionscommitting after E51/EC06B668, reading WAL from E51/EC06B668.
 
2021-05-17 16:08:03.597 CEST -usztestlogrepsub@10.139.0.41  <mailto:usztestlogrepsub@10.139.0.41>: LOG:  logical
decodingfound consistent point at E51/EC06B668
 
2021-05-17 16:08:03.597 CEST -usztestlogrepsub@10.139.0.41  <mailto:usztestlogrepsub@10.139.0.41>: DETAIL:  There are
norunning transactions.
 

Can anybody explain why this happens, and how to avoid it?

regards
Hannes


-- 


    







pgsql-general by date:

Previous
From: Ben Hoskings
Date:
Subject: Re: Occasional lengthy locking causing stalling on commit
Next
From: Tom Lane
Date:
Subject: Re: Logical Replication: SELECT pg_catalog.set_config Statement