IMHO the best references to parallelizing query plans are in the Volcano papers. The Exchange operator is a really clean abstraction - the idea is to place the Exchange operator in query plans and that way you don't have to paralellize any other operator. Exchange takes care of managing the IPC queues and also worries about whether or not you have to, say, "rehash the data", or "broadcast the data to all other processes" or "direct the data to a single node" ...
I'd suggest reading the following paper: "Encapsulation of parallelism in the Volcano query processing system" By Goetz Graefe in SIGMOD 1990. Link: http://portal.acm.org/citation.cfm?id=98720 The above link also has references to Gamma but I really like the exposition in the Volcano/Exchange work much better. -- Pip-pip Sailesh http://www.cs.berkeley.edu/~sailesh ---------------------------(end of broadcast)--------------------------- TIP 8: explain analyze is your friend