Re: Trouble with hashagg spill I/O pattern and costing
Jeff Davis <pgsql@j-davis.com>
From: Jeff Davis <pgsql@j-davis.com>
To: Tomas Vondra <tomas.vondra@2ndquadrant.com>
Cc: pgsql-hackers@postgresql.org
Date: 2020-05-21T19:40:23Z
Lists: pgsql-hackers
On Thu, 2020-05-21 at 21:13 +0200, Tomas Vondra wrote: > 1) Instead of assigning the pages one by one, we can easily extend > the > API to allow getting a range of blocks, so that we don't need to call > ltsGetFreeBlock in a loop. Instead we could call ltsGetFreeBlockRange > with the requested number of blocks. ltsGetFreeBlock() just draws one element from a minheap. Is there some more efficient way to get many elements from a minheap at once? > And we could keep just a min/max > of free blocks, not an array with fixed number of elements. I don't quite know what you mean. Can you elaborate? Regards, Jeff Davis
Commits
-
Use CP_SMALL_TLIST for hash aggregate
- 4cad2534da6d 13.0 landed
-
Avoid fragmentation of logical tapes when writing concurrently.
- 896ddf9b3cd7 13.0 landed