On Fri, Jun 2, 2017 at 6:38 PM, Robert Haas <robertmh...@gmail.com> wrote:
> On Fri, Jun 2, 2017 at 9:01 AM, Amit Kapila <amit.kapil...@gmail.com> wrote:
>> Your reasoning sounds sensible to me.  I think the other way to attack
>> this problem is that we can maintain some local queue in each of the
>> workers when the shared memory queue becomes full.  Basically, we can
>> extend your "Faster processing at Gather node" patch [1] such that
>> instead of fixed sized local queue, we can extend it when the shm
>> queue become full.  I think that way we can handle both the problems
>> (worker won't stall if shm queues are full and workers can do batched
>> writes in shm queue to avoid the shm queue communication overhead) in
>> a similar way.
> We still have to bound the amount of memory that we use for queueing
> data in some way.

Yeah, probably till work_mem (or some percentage of work_mem).  If we
want to have some extendable solution then we might want to back it up
with some file, however, we might not need to go that far.  I think we
can do some experiments to see how much additional memory is
sufficient to give us maximum benefit.

With Regards,
Amit Kapila.
EnterpriseDB: http://www.enterprisedb.com

Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:

Reply via email to