From: | Andrei Lepikhov <lepihov(at)gmail(dot)com> |
---|---|
To: | Sergey Koposov <Sergey(dot)Koposov(at)ed(dot)ac(dot)uk>, "tgl(at)sss(dot)pgh(dot)pa(dot)us" <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | "pgsql-bugs(at)lists(dot)postgresql(dot)org" <pgsql-bugs(at)lists(dot)postgresql(dot)org> |
Subject: | Re: BUG #18909: Query creates millions of temporary files and stalls |
Date: | 2025-05-04 07:52:13 |
Message-ID: | 9691212b-86f0-4476-940e-2e4ba0dd0cf9@gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
On 4/5/2025 01:05, Sergey Koposov wrote:
> The only thing I can add is that panstarrs1bestneighbour is ordered on disk by source_id. I don't know if that can be relevant.
Seems promising. May you show us how much NULLs generates underlying
JOIN operator. I guess, in your example the query should be close to the
following:
SELECT count(*) FROM disk_sample1 d
LEFT JOIN gaia_edr3_aux.panstarrs1bestneighbour AS gaps1
ON (gaps1.original_ext_source_id = d.objid)
WHERE gaps1.original_ext_source_id IS NULL;
And just to be sure, show us the number of NULLs that may be generated
by alternative LEFT JOIN:
SELECT count(*) FROM gaia_edr3_aux.panstarrs1bestneighbour AS gaps1
LEFT JOIN gaia_edr3.gaia_source AS g
ON (g.source_id = gaps1.source_id)
WHERE g.source_id IS NULL;
Also, show please the current value of the GUC hash_mem_multiplier.
--
regards, Andrei Lepikhov
From | Date | Subject | |
---|---|---|---|
Next Message | Sergey Koposov | 2025-05-04 11:45:05 | Re: BUG #18909: Query creates millions of temporary files and stalls |
Previous Message | Sergey Koposov | 2025-05-03 23:05:31 | Re: BUG #18909: Query creates millions of temporary files and stalls |