| From: | Robert Haas <robertmhaas(at)gmail(dot)com> |
|---|---|
| To: | Craig Ringer <craig(at)2ndquadrant(dot)com> |
| Cc: | Tomas Vondra <tomas(dot)vondra(at)2ndquadrant(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Re: PATCH: enabling parallel execution for cursors explicitly (experimental) |
| Date: | 2017-11-02 02:35:55 |
| Message-ID: | CA+TgmoaUih033KS2L51HwD5JdiKsgL2wbTmyemzZsWNRDWWfdA@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
On Thu, Nov 2, 2017 at 8:01 AM, Craig Ringer <craig(at)2ndquadrant(dot)com> wrote:
> That forces materialization, and I'm guessing part of Tomas's goal
> here is to prevent the need to materialize into a temp table /
> tuplestore / etc.
I get that, but if you're running a query like "SELECT * FROM
bigtable", you don't need parallel query in the first place, because a
single backend is quite capable of sending back the rows as fast as a
client can read them. If you're running a query like "SELECT * FROM
bigtable WHERE <highly selective predicate>" then that's a good use
case for parallel query, but then materializing it isn't that bad
because the result set is a lot smaller than the original table.
I am not disputing the idea that there are *some* cases where parallel
query is useful and materialization is still undesirable, of course.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Bossart, Nathan | 2017-11-02 02:37:05 | Re: Enhancements to passwordcheck |
| Previous Message | Peter Eisentraut | 2017-11-02 02:32:46 | Re: Enhancements to passwordcheck |