Obrigado Flavio,
Desculpa, a versão é a 9.1.14. Fiz o ajuste em "hot_standby_feedback",
agora é só acompanhar.
Segue a configuração de replicação do Escravo da maneira que deixei.
# - Master Server -
# These settings are ignored on a standby server
#max_wal_senders = 0 # max number of walsender processes
# (change requires restart)
#wal_sender_delay = 1s # walsender cycle time, 1-10000 milliseconds
#wal_keep_segments = 0 # in logfile segments, 16MB each; 0 disables
#vacuum_defer_cleanup_age = 0 # number of xacts by which cleanup is
delayed
#replication_timeout = 60s # in milliseconds; 0 disables
#synchronous_standby_names = '' # standby servers that provide sync rep
# comma-separated list of application_name
# from standby(s); '*' = all
# - Standby Servers -
# These settings are ignored on a master server
hot_standby = on # "on" allows queries during
recovery
# (change requires restart)
#max_standby_archive_delay = 30s # max delay before canceling queries
# when reading WAL from archive;
# -1 allows indefinite delay
#max_standby_streaming_delay = 30s # max delay before canceling queries
# when reading streaming WAL;
# -1 allows indefinite delay
#wal_receiver_status_interval = 10s # send replies at least this often
# 0 disables
hot_standby_feedback = on # send info from standby to prevent
# query conflicts
Em 5 de setembro de 2014 10:01, Flavio Henrique Araque Gurgel <
[email protected]> escreveu:
> Pessoal bom dia,
>>
>>
>> Tenho um ambiente replicado com a replicação nativa do postgres, onde no
>> slave para dividir a carga nas consultas apontei alguns sistemas que só
>> fazem selects (nada de inserts, updates).
>>
>> Agora no log do Slave está aparecendo as seguintes mensagens:
>>
>>
>>
>> 2014-09-05 09:48:11 BRT [12271]: [1-1] user=postgres,db=base FATAL:
>> terminando conexão por causa de um conflito com recuperação
>> 2014-09-05 09:48:11 BRT [12271]: [2-1] user=postgres,db=base DETALHE:
>> Consulta do usuário pode ter precisado acessar versões de registros
>> que devem ser removidas.
>> 2014-09-05 09:48:11 BRT [12271]: [3-1] user=postgres,db=base DICA:
>> Dentro de instantes você poderá conectar novamente ao banco de dados e
>> repetir seu commando.
>> 2014-09-05 09:48:11 BRT [12286]: [8-1] user=postgres,db=base ERRO:
>> cancelando comando por causa de um conflito com recuperação
>> 2014-09-05 09:48:11 BRT [12286]: [9-1] user=postgres,db=base DETALHE:
>> Consulta do usuário pode ter precisado acessar versões de registros
>> que devem ser removidas.
>>
>>
>> Fiz uma procura rapida no google, mas não tive muito sucesso. Vocês já
>> passaram por isto alguma vez?
>>
>
> Você não disse a versão.
> Isso ocorre porque uma tupla não necessária ao mestre e que foi removida
> por uma passagem do autovacuum é necessária à consulta no escravo.
> Para evitar isso, ligar a configuração "hot_standby_feedback" no escravo.
> Isso está disponível a partir da versão 9.1. Na versão 9.0 existem algumas
> estratégias possíveis.
>
> []s
> Flavio Gurgel
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
--
José Ariel Ferreira Alves
[email protected]
[email protected]
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral