hot_standby_feedback
A configuração que permite a uma réplica de leitura avisar o primário do que ainda precisa, para que consultas longas não sejam canceladas no meio. O preço é pago em bloat no primário.
O conflito surge porque o primário não sabe nada do que a réplica está fazendo. O vacuum de lá remove versões antigas de linhas que ninguém mais precisa — pela conta do primário — e, quando essa mudança é replicada, a réplica tem de aplicá-la mesmo que uma consulta de relatório ainda esteja lendo exatamente essas linhas. O resultado é o erro de statement cancelado por conflito com a recuperação, difícil de explicar a quem rodou a consulta. Com o feedback ativado, a réplica envia para cima o ID da transação mais antiga em execução e o primário segura a limpeza. A desvantagem é o espelho exato: uma consulta esquecida na réplica agora pode bloquear a limpeza no primário por horas.