[Gfoss] ERROR: out of memory for query result

a.furieri a lqt.it a.furieri a lqt.it
Sab 24 Nov 2018 12:56:49 CET


On Sat, 24 Nov 2018 12:46:39 +0100, Massimiliano Moraca wrote:
> Ciao Sandro, avevo editato il primo post con una indicazione che 
> avevo
> dimenticato, la ricopio qui:
>
> _EDIT: uso PostgreSQL 10 ed ho settato, in postgresql.conf,
> shared_buffers a 2560MB  _
>
> Mi ero letto la documentazione e proprio per questo ho aumentato 
> l'uso
> della RAM ma il risultato è invariato
>

Massimiliano,

temo che aggiustare solo "shared_buffers" non basti affatto, presumo
che dovresti arrangiare anche "work_mem", e forse anche altri tra
i molti parametri che influenzano le allocazioni di RAM.

prova a leggerti questo:
https://wiki.postgresql.org/wiki/Tuning_Your_PostgreSQL_Server

ciao Sandro


> Il giorno sab 24 nov 2018 alle ore 12:31  ha scritto:
>
>> On Sat, 24 Nov 2018 03:56:21 -0700 (MST), Massimiliano Moraca wrote:
>> > Salve a tutti!
>> > Sto provando a fare un left join con PostGIS tra un vettore di
>> linee
>> > con
>> > poco meno di 2.5milioni di elementi ed una tabella con circa
>> 4mila
>> > elementi.
>> >
>> > Questa è la sintassi che sto usando:
>> >
>> > /SELECT
>> >       a.geom,
>> >       a.fid,
>> >       a.id [1],
>> >       a.nom,
>> >       b.width_cat,
>> >       b.importance
>> > FROM
>> >       france_rivers_bdtopo_hydrographie as a
>> > LEFT JOIN principal_rivers_nogeom as b ON a.nom =
>> b.toponyme_lower;/
>> >
>> > Dopo un po' di minuti di attesa, pgAdmin 4 mi da l'errore in
>> oggetto.
>> >
>> > Ho un pc con CPU i7-4970k, 16GB di RAM DDR3, un SSD da 120GB con
>> 20GB
>> > liberi; ho monitorato tramite "Gestione attività" di Windows 10
>> l'uso
>> > della
>> > RAM e non ha mai sforato i 10GB nei test che ho effettuato.
>> >
>> > Come è possibile che ho quell'errore secondo voi?
>> >
>>
>> Massimiliano,
>>
>> PostgreSQL ha una gestione molto sofisticata della RAM, e tutto
>> quanto
>> dipende fortemente da come hai impostato i files della
>> configurazione.
>> di norma la configurazione standard che viene installata
>> automaticamente
>> e' molto conservativa e fortemente prudenziale; va bene per piccole
>> macchine poco potenti e con dotazioni molto limitate, mentre tende
>> a sfruttare poco e male le macchine con dotazioni piu' generose.
>>
>> in soldoni, il fatto che tu abbia installato 16GB di RAM non
>> implica automaticamente il fatto che PostgreSQL la sfruttera'
>> tutta quanta: si fermera' alle soglie indicate dalla configurazione
>> corrente, che verosimilmente saranno molto piu' sparagnine.
>>
>> prova a leggerti la doc di Postgres per capire meglio come
>> funziona il file postgresql.conf
>>
>> https://www.postgresql.org/docs/9.4/runtime-config-resource.html
>> [2]
>>
>> ciao Sandro
>> _______________________________________________
>> Gfoss a lists.gfoss.it [3]
>> http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss [4]
>> Questa e' una lista di discussione pubblica aperta a tutti.
>> I messaggi di questa lista non hanno relazione diretta con le
>> posizioni dell'Associazione GFOSS.it.
>> 796 iscritti al 28/12/2017
>
>
> Links:
> ------
> [1] http://a.id
> [2] https://www.postgresql.org/docs/9.4/runtime-config-resource.html
> [3] mailto:Gfoss a lists.gfoss.it
> [4] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
> [5] mailto:a.furieri a lqt.it



Maggiori informazioni sulla lista Gfoss