1

我从 Postgres 10.3 逻辑复制中遇到错误。

设置

  • 在master中,postgresql使用12.3
  • 在逻辑上,postgres 10.3

日志

2021-03-22 13:06:57.332 IST @ 25929 LOG:  checkpoints are occurring too frequently (22 seconds apart)
2021-03-22 13:06:57.332 IST @ 25929 HINT:  Consider increasing the configuration parameter "max_wal_size".
2021-03-22 14:34:21.263 IST @ 21461 ERROR:  invalid logical replication message type "T"
2021-03-22 14:34:21.315 IST @ 3184 LOG:  logical replication apply worker for subscription "elk_subscription_133" has started
2021-03-22 14:34:21.367 IST @ 3184 ERROR:  invalid logical replication message type "T"
2021-03-22 14:34:21.369 IST @ 25921 LOG:  worker process: logical replication worker for subscription 84627 (PID 3184) exited with exit code 1
2021-03-22 14:34:22.259 IST @ 25921 LOG:  worker process: logical replication worker for subscription 84627 (PID 21461) exited with exit code 1
2021-03-22 14:34:27.281 IST @ 3187 LOG:  logical replication apply worker for subscription "elk_subscription_133" has started
2021-03-22 14:34:27.311 IST @ 3187 ERROR:  invalid logical replication message type "T"
2021-03-22 14:34:27.313 IST @ 25921 LOG:  worker process: logical replication worker for subscription 84627 (PID 3187) exited with exit code 1
2021-03-22 14:34:32.336 IST @ 3188 LOG:  logical replication apply worker for subscription "elk_subscription_133" has started
2021-03-22 14:34:32.362 IST @ 3188 ERROR:  invalid logical replication message type "T"
4

1 回答 1

0

该文档描述了消息T

截短

      字节 1('T')

              将消息标识为截断消息。

在 v11 中添加了对 的支持TRUNCATE,因此主服务器必须是 v11 或更高版本。

您必须从发布中删除表,刷新订阅,手动截断表,将其添加到发布并再次刷新订阅。

避免TRUNCATE和更改出版物:

ALTER PUBLICATION name SET (publish = 'insert, update, delete');
于 2021-03-23T03:07:14.600 回答