Commit acb7e4e
committed
Implement pipeline mode in libpq
Pipeline mode in libpq lets an application avoid the Sync messages in
the FE/BE protocol that are implicit in the old libpq API after each
query. The application can then insert Sync at its leisure with a new
libpq function PQpipelineSync. This can lead to substantial reductions
in query latency.
Co-authored-by: Craig Ringer <craig.ringer@enterprisedb.com>
Co-authored-by: Matthieu Garrigues <matthieu.garrigues@gmail.com>
Co-authored-by: Álvaro Herrera <alvherre@alvh.no-ip.org>
Reviewed-by: Andres Freund <andres@anarazel.de>
Reviewed-by: Aya Iwata <iwata.aya@jp.fujitsu.com>
Reviewed-by: Daniel Vérité <daniel@manitou-mail.org>
Reviewed-by: David G. Johnston <david.g.johnston@gmail.com>
Reviewed-by: Justin Pryzby <pryzby@telsasoft.com>
Reviewed-by: Kirk Jamison <k.jamison@fujitsu.com>
Reviewed-by: Michael Paquier <michael.paquier@gmail.com>
Reviewed-by: Nikhil Sontakke <nikhils@2ndquadrant.com>
Reviewed-by: Vaishnavi Prabakaran <VaishnaviP@fast.au.fujitsu.com>
Reviewed-by: Zhihong Yu <zyu@yugabyte.com>
Discussion: https://postgr.es/m/CAMsr+YFUjJytRyV4J-16bEoiZyH=4nj+sQ7JP9ajwz=B4dMMZw@mail.gmail.com
Discussion: https://postgr.es/m/CAJkzx4T5E-2cQe3dtv2R78dYFvz+in8PY7A8MArvLhs_pg75gg@mail.gmail.com1 parent 146cb38 commit acb7e4e
File tree
18 files changed
+2706
-113
lines changed- doc/src/sgml
- src
- backend/replication/libpqwalreceiver
- bin/pg_amcheck
- interfaces/libpq
- test/modules
- libpq_pipeline
- t
- tools
- msvc
- pgindent
18 files changed
+2706
-113
lines changedLarge diffs are not rendered by default.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
130 | 130 | | |
131 | 131 | | |
132 | 132 | | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
133 | 137 | | |
134 | 138 | | |
135 | 139 | | |
| |||
Lines changed: 6 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1019 | 1019 | | |
1020 | 1020 | | |
1021 | 1021 | | |
| 1022 | + | |
| 1023 | + | |
| 1024 | + | |
| 1025 | + | |
| 1026 | + | |
| 1027 | + | |
1022 | 1028 | | |
1023 | 1029 | | |
1024 | 1030 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
929 | 929 | | |
930 | 930 | | |
931 | 931 | | |
| 932 | + | |
| 933 | + | |
932 | 934 | | |
933 | 935 | | |
934 | 936 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
179 | 179 | | |
180 | 180 | | |
181 | 181 | | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
522 | 522 | | |
523 | 523 | | |
524 | 524 | | |
| 525 | + | |
| 526 | + | |
| 527 | + | |
| 528 | + | |
| 529 | + | |
| 530 | + | |
| 531 | + | |
| 532 | + | |
| 533 | + | |
| 534 | + | |
| 535 | + | |
| 536 | + | |
| 537 | + | |
| 538 | + | |
| 539 | + | |
| 540 | + | |
| 541 | + | |
525 | 542 | | |
526 | 543 | | |
527 | 544 | | |
| |||
553 | 570 | | |
554 | 571 | | |
555 | 572 | | |
| 573 | + | |
| 574 | + | |
| 575 | + | |
| 576 | + | |
| 577 | + | |
| 578 | + | |
556 | 579 | | |
557 | 580 | | |
558 | 581 | | |
| |||
2459 | 2482 | | |
2460 | 2483 | | |
2461 | 2484 | | |
| 2485 | + | |
2462 | 2486 | | |
2463 | 2487 | | |
2464 | 2488 | | |
| |||
3917 | 3941 | | |
3918 | 3942 | | |
3919 | 3943 | | |
| 3944 | + | |
3920 | 3945 | | |
3921 | 3946 | | |
3922 | 3947 | | |
| |||
4084 | 4109 | | |
4085 | 4110 | | |
4086 | 4111 | | |
4087 | | - | |
4088 | | - | |
4089 | 4112 | | |
4090 | 4113 | | |
4091 | 4114 | | |
| |||
4174 | 4197 | | |
4175 | 4198 | | |
4176 | 4199 | | |
| 4200 | + | |
4177 | 4201 | | |
4178 | 4202 | | |
4179 | 4203 | | |
| |||
6726 | 6750 | | |
6727 | 6751 | | |
6728 | 6752 | | |
| 6753 | + | |
| 6754 | + | |
| 6755 | + | |
| 6756 | + | |
| 6757 | + | |
| 6758 | + | |
| 6759 | + | |
| 6760 | + | |
| 6761 | + | |
6729 | 6762 | | |
6730 | 6763 | | |
6731 | 6764 | | |
| |||
0 commit comments