Re: why do we need two snapshots per query?
Dimitri Fontaine <dimitri@2ndquadrant.fr>
From: Dimitri Fontaine <dimitri@2ndQuadrant.fr>
To: Robert Haas <robertmhaas@gmail.com>
Cc: pgsql-hackers@postgresql.org
Date: 2011-11-11T19:21:39Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Fix copyright notices, other minor editing in new range-types code.
- f1585362856d 9.2.0 cited
-
Redesign the plancache mechanism for more flexibility and efficiency.
- e6faf910d750 9.2.0 cited
Robert Haas <robertmhaas@gmail.com> writes: > Considering that GetSnapshotData() is the number-one consumer of CPU > time on many profiling runs I've done, this seems needlessly > inefficient. Can't we arrange to retain the snapshot used for parse > analysis / planning and reuse it for the portal that we create just > afterwards? Off the top of my head, I'm not exactly sure how to do > that cleanly, but it seems like it should work. Please refer to this thread: http://postgresql.1045698.n5.nabble.com/One-Shot-Plans-td4488820.html It seems one of the more prominent drawback of Simon's approach to one-shot plans then was which snapshot it's running against, so your proposal to optimize one-shot plan by enforcing the use of a single snapshot looks like a step forward here. The other problem is how to recognize a query as being a candidate for one-shot optimization, but I guess exec_simple_query (as opposed to the v3 protocol) applies. Regards, -- Dimitri Fontaine http://2ndQuadrant.fr PostgreSQL : Expertise, Formation et Support