> Fiz uma consulta grande no banco e recebi a mensagem "out of memory for
> result query".
> A consulta foi executada no servidor master.
> Atualmente minha work_mem esta em 9mb, sendo que foi alterada recentemente,
> e antes da alteração ainda nao havia me deparado com esta mensagem.
> A consulta é pesada a ponto de dificilmente vir a ser utilizada, mas pode
> ocorrer.
> Alguem já se deparou com isso?

Sim.

> Qual a solução?

Você esgotou a memória RAM disponível e o PostgreSQL não conseguiu alocar mais.

>
> Centos 6
> 4gb RAM - Utilizando work_mem 9mb

Quantas conexões?
Quanto de shared_buffers?

Se a equação:
selects * work_mem + sub-selects * work_mem + shared_buffers + consumo
do S.O. > RAM total
você terá a mensagem que recebeste.

Diminuir o work_mem pode resolver este problema. Suas consultas que
precisam de memória serão um pouco mais lentas, pois o PostgreSQL fará
arquivos temporários para suprir a necessidade. Mas não se esgotará
toda a RAM disponível.

[]s
Flavio Gurgel
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a