Re: PATCH: Batch/pipelining support for libpq
От | Daniel Verite |
---|---|
Тема | Re: PATCH: Batch/pipelining support for libpq |
Дата | |
Msg-id | b27523b8-6e41-44e8-8cc6-ea136316cdcd@manitou-mail.org обсуждение исходный текст |
Ответ на | Re: PATCH: Batch/pipelining support for libpq (Alvaro Herrera <alvherre@alvh.no-ip.org>) |
Ответы |
Re: PATCH: Batch/pipelining support for libpq
|
Список | pgsql-hackers |
Alvaro Herrera wrote: > I adapted the test code to our code style. I also removed the "timings" > stuff; I think that's something better left to pgbench. > > (I haven't looked at Daniel's pgbench stuff yet, but I will do that > next.) The patch I posted in [1] was pretty simple, but at the time, query results were always discarded. Now that pgbench can instantiate variables from query results, a script can do: select 1 as var \gset select :var; This kind of sequence wouldn't work in batch mode since it sends queries before getting results of previous queries. So maybe \gset should be rejected when inside a batch section. Or alternatively pgbench should collect results before a variable is reinjected into a query, thereby stalling the pipeline. To do this only when necessary, it would have to track read-write dependencies among variables, which seems overly complicated though. [1] https://www.postgresql.org/message-id/b4e34135-2bd9-4b8a-94ca-27d760da26d7@manitou-mail.org Best regards, -- Daniel Vérité PostgreSQL-powered mailer: https://www.manitou-mail.org Twitter: @DanielVerite
В списке pgsql-hackers по дате отправления: