我有两个postgresql 11.4
作为主节点和从节点运行。
我正在主服务器上插入大量数据,以确保它在从服务器上得到复制。尝试模拟以下情况
- 插入海量数据
- 等待wal文件被发送到slave
resume_wal_replay
on slave- 当有多个wal文件等待重播时立即提升
pause_wal_replay
如果此时发布promote signal
[当有多个wall -已经发送并等待重放],slave何时提升自己?
-
重播所有现有的wal文件后[
shipped and waiting to be replayed
]或者 -
收到提升信号后立即。[
Without replaying the wal files
等待-causing data loss
?])
如果是(1)
,如果主节点仍然在发送wal文件,我尝试提升从节点,会发生什么?它是否忽视了即将到来的墙而自我推销?
希望PG专家能解释清楚。
PS:如果值得一提的话,我正在通过创建一个"pg_failover_trigger
"来发出促进信号。
当它被提升时,备用服务器关闭WAL接收进程并恢复它拥有的所有剩余的WAL。所以我们得到了1的行为