how to pass data (tuples) to worker processes?

From: Tomas Vondra <tv(at)fuzzy(dot)cz>
To: pgsql-hackers(at)postgresql(dot)org
Subject: how to pass data (tuples) to worker processes?
Date: 2013-04-07 21:24:45
Message-ID: 5161E41D.2090609@fuzzy.cz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

I'm learning how to use the "background worker processes" commited in
9.3. The usage basics are quite nicely illustrated in the worker_spi
extension (kudos to those who designed the feature / extension).

I'm not quite sure how to pass data between the regular backend and a
worker. Implementing the channel (socket/pipe/...) itself is not a big
deal, that's IPC 101, but deciding which data to copy (and how) is.

Say I need to forward a tuple to the worker process - e.g. from a
nodeAgg node, so that the worker can build the hash table. Is there
something (a rule of a thumb, method, ...) that would help me to
identify the pieces of data that need to be copied?

Or do I need to do the go through the objects and decide what to copy
and how on my own?

regards
Tomas

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Misa Simic 2013-04-07 23:11:21 Re: Fwd: Range types (DATERANGE, TSTZRANGE) in a foreign key with "inclusion" logic
Previous Message Tomas Vondra 2013-04-07 18:55:02 Re: PROPOSAL: tracking aggregated numbers from pg_stat_database