2개의 GCP CloudSQL 인스턴스 간에 pglogical 복제를 설정할 수 없습니다.

2개의 GCP CloudSQL 인스턴스 간에 pglogical 복제를 설정할 수 없습니다.

pglogical현재 지역 간에 데이터를 빠르게 마이그레이션하기 위해 2개의 GCP CloudSQL Postgres 인스턴스 간에 복제를 설정하려고 합니다 .

replicator사용자를 생성하고 해당 사용자로 확장 프로그램을 설치하고 pglogical필요한 구성을 수행하여 GCP 문서[1]를 따랐습니다 .

그러나 대상 서비스에서 구독을 생성할 때마다 처음에는 상태가 다음과 같이 변경된 initializingdown. Looking at thepostgres 로그로 변경됩니다. 대상 측에서 다음 오류를 볼 수 있습니다.

db=api,user=replicator ERROR:  permission denied for function pg_replication_origin_session_setup

언급된 기능이 대상 DB에 보이는데, 해당 GRANT EXECUTE기능을 시도할 때마다 아래와 같은 경고가 뜹니다.

postgres=> \df+ pg_replication_origin_session_setup

      List of functions
   Schema   |                Name                 | Result data type | Argument data types | Type | Volatility | Parallel |     Owner     | Securi
ty |         Access privileges         | Language |             Source code             |                                     Description

------------+-------------------------------------+------------------+---------------------+------+------------+----------+---------------+-------
---+-----------------------------------+----------+-------------------------------------+---------------------------------------------------------
-----------------------------
 pg_catalog | pg_replication_origin_session_setup | void             | text                | func | volatile   | unsafe   | cloudsqladmin | invoke
r  | cloudsqladmin=X/cloudsqladmin    +| internal | pg_replication_origin_session_setup | configure session to maintain replication progress track
ing for the passed in origin
            |                                     |                  |                     |      |            |          |               |
   | cloudsqlsuperuser=X/cloudsqladmin |          |                                     |
(1 row)

postgres=> \du replicator
                 List of roles
 Role name  | Attributes  |      Member of
------------+-------------+---------------------
 replicator | Replication | {cloudsqlsuperuser}

postgres=> GRANT EXECUTE ON FUNCTION pg_catalog.pg_replication_origin_session_setup TO replicator;
WARNING:  no privileges were granted for "pg_replication_origin_session_setup"
GRANT

pglogical이전에 CloudSQL을 설정할 수 있었던 사람이 있나요 ? 아니면 위의 permission denied오류가 표시됩니까?

미리 감사드립니다.
개빈

[1]https://cloud.google.com/sql/docs/postgres/replication/configure-logical-replication#configure-your-postgresql-instance

관련 정보