问题描述
我正在检查Postges 12.3中的逻辑复制...这很棒。一个简单的问题,ENABLE REPLICA TRIGGER
和ENABLE ALWAYS TRIGGER
之间的行为是否有区别?我已经在一个简单的测试设置中尝试了这两种方法,并且它们都启用了复制端触发器。
我在文档中找不到任何额外的细节,或者经过一点搜索。
如果它们是同义词,我将继续使用ENABLE REPLICA TRIGGER
,因为这似乎是一个更具体的意图声明。
谢谢。
解决方法
查看此处:
https://www.postgresql.org/docs/current/sql-altertable.html
当复制角色为“原始”(默认)或“本地”时,将启用仅启用触发器(默认)。仅当会话处于“副本”模式时,才会触发配置为ENABLE REPLICA的触发器,而无论当前的复制角色如何,都将触发配置为ENABLE ALWAYS的触发器。