forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit3452dc5
committed
Push tuple limits through Gather and Gather Merge.
If we only need, say, 10 tuples in total, then we certainly don't needmore than 10 tuples from any single process. Pushing down the limitlets workers exit early when possible. For Gather Merge, there isan additional benefit: a Sort immediately below the Gather Merge canbe done as a bounded sort if there is an applicable limit.Robert Haas and Tom LaneDiscussion:http://postgr.es/m/CA+TgmoYa3QKKrLj5rX7UvGqhH73G1Li4B-EKxrmASaca2tFu9Q@mail.gmail.com1 parentce5dcf5 commit3452dc5
File tree
10 files changed
+222
-97
lines changed- src
- backend/executor
- include
- executor
- nodes
- test/regress
- expected
- sql
10 files changed
+222
-97
lines changedLines changed: 44 additions & 10 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
47 | 47 |
| |
48 | 48 |
| |
49 | 49 |
| |
50 |
| - | |
51 |
| - | |
52 |
| - | |
53 |
| - | |
54 |
| - | |
55 |
| - | |
56 |
| - | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
57 | 58 |
| |
58 | 59 |
| |
59 | 60 |
| |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
60 | 69 |
| |
61 | 70 |
| |
62 | 71 |
| |
| |||
381 | 390 |
| |
382 | 391 |
| |
383 | 392 |
| |
384 |
| - | |
| 393 | + | |
| 394 | + | |
385 | 395 |
| |
386 | 396 |
| |
387 | 397 |
| |
388 | 398 |
| |
389 | 399 |
| |
| 400 | + | |
390 | 401 |
| |
391 | 402 |
| |
392 | 403 |
| |
| |||
418 | 429 |
| |
419 | 430 |
| |
420 | 431 |
| |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
421 | 437 |
| |
422 | 438 |
| |
423 | 439 |
| |
| |||
487 | 503 |
| |
488 | 504 |
| |
489 | 505 |
| |
| 506 | + | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
| 510 | + | |
490 | 511 |
| |
491 | 512 |
| |
492 | 513 |
| |
| |||
833 | 854 |
| |
834 | 855 |
| |
835 | 856 |
| |
| 857 | + | |
836 | 858 |
| |
837 | 859 |
| |
838 | 860 |
| |
| |||
841 | 863 |
| |
842 | 864 |
| |
843 | 865 |
| |
| 866 | + | |
| 867 | + | |
| 868 | + | |
844 | 869 |
| |
845 | 870 |
| |
846 | 871 |
| |
| |||
868 | 893 |
| |
869 | 894 |
| |
870 | 895 |
| |
871 |
| - | |
872 |
| - | |
| 896 | + | |
| 897 | + | |
| 898 | + | |
| 899 | + | |
| 900 | + | |
| 901 | + | |
| 902 | + | |
| 903 | + | |
| 904 | + | |
| 905 | + | |
| 906 | + | |
873 | 907 |
| |
874 | 908 |
| |
875 | 909 |
| |
|
Lines changed: 121 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
757 | 757 |
| |
758 | 758 |
| |
759 | 759 |
| |
| 760 | + | |
| 761 | + | |
| 762 | + | |
| 763 | + | |
| 764 | + | |
| 765 | + | |
| 766 | + | |
| 767 | + | |
| 768 | + | |
| 769 | + | |
| 770 | + | |
| 771 | + | |
| 772 | + | |
| 773 | + | |
| 774 | + | |
| 775 | + | |
| 776 | + | |
| 777 | + | |
| 778 | + | |
| 779 | + | |
| 780 | + | |
| 781 | + | |
| 782 | + | |
| 783 | + | |
| 784 | + | |
| 785 | + | |
| 786 | + | |
| 787 | + | |
| 788 | + | |
| 789 | + | |
| 790 | + | |
| 791 | + | |
| 792 | + | |
| 793 | + | |
| 794 | + | |
| 795 | + | |
| 796 | + | |
| 797 | + | |
| 798 | + | |
| 799 | + | |
| 800 | + | |
| 801 | + | |
| 802 | + | |
| 803 | + | |
| 804 | + | |
| 805 | + | |
| 806 | + | |
| 807 | + | |
| 808 | + | |
| 809 | + | |
| 810 | + | |
| 811 | + | |
| 812 | + | |
| 813 | + | |
| 814 | + | |
| 815 | + | |
| 816 | + | |
| 817 | + | |
| 818 | + | |
| 819 | + | |
| 820 | + | |
| 821 | + | |
| 822 | + | |
| 823 | + | |
| 824 | + | |
| 825 | + | |
| 826 | + | |
| 827 | + | |
| 828 | + | |
| 829 | + | |
| 830 | + | |
| 831 | + | |
| 832 | + | |
| 833 | + | |
| 834 | + | |
| 835 | + | |
| 836 | + | |
| 837 | + | |
| 838 | + | |
| 839 | + | |
| 840 | + | |
| 841 | + | |
| 842 | + | |
| 843 | + | |
| 844 | + | |
| 845 | + | |
| 846 | + | |
| 847 | + | |
| 848 | + | |
| 849 | + | |
| 850 | + | |
| 851 | + | |
| 852 | + | |
| 853 | + | |
| 854 | + | |
| 855 | + | |
| 856 | + | |
| 857 | + | |
| 858 | + | |
| 859 | + | |
| 860 | + | |
| 861 | + | |
| 862 | + | |
| 863 | + | |
| 864 | + | |
| 865 | + | |
| 866 | + | |
| 867 | + | |
| 868 | + | |
| 869 | + | |
| 870 | + | |
| 871 | + | |
| 872 | + | |
| 873 | + | |
| 874 | + | |
| 875 | + | |
| 876 | + | |
| 877 | + | |
| 878 | + | |
| 879 | + | |
| 880 | + |
Lines changed: 3 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
72 | 72 |
| |
73 | 73 |
| |
74 | 74 |
| |
| 75 | + | |
75 | 76 |
| |
76 | 77 |
| |
77 | 78 |
| |
| |||
156 | 157 |
| |
157 | 158 |
| |
158 | 159 |
| |
159 |
| - | |
| 160 | + | |
| 161 | + | |
160 | 162 |
| |
161 | 163 |
| |
162 | 164 |
| |
|
Lines changed: 3 additions & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
77 | 77 |
| |
78 | 78 |
| |
79 | 79 |
| |
| 80 | + | |
80 | 81 |
| |
81 | 82 |
| |
82 | 83 |
| |
| |||
190 | 191 |
| |
191 | 192 |
| |
192 | 193 |
| |
193 |
| - | |
| 194 | + | |
| 195 | + | |
194 | 196 |
| |
195 | 197 |
| |
196 | 198 |
| |
|
Lines changed: 16 additions & 82 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
27 | 27 |
| |
28 | 28 |
| |
29 | 29 |
| |
30 |
| - | |
| 30 | + | |
31 | 31 |
| |
32 | 32 |
| |
33 | 33 |
| |
| |||
297 | 297 |
| |
298 | 298 |
| |
299 | 299 |
| |
300 |
| - | |
301 |
| - | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
302 | 307 |
| |
303 | 308 |
| |
304 | 309 |
| |
305 |
| - | |
306 |
| - | |
307 |
| - | |
308 |
| - | |
309 |
| - | |
310 |
| - | |
311 |
| - | |
312 |
| - | |
313 |
| - | |
314 |
| - | |
315 |
| - | |
316 |
| - | |
317 |
| - | |
318 |
| - | |
| 310 | + | |
| 311 | + | |
319 | 312 |
| |
320 |
| - | |
321 |
| - | |
| 313 | + | |
| 314 | + | |
322 | 315 |
| |
323 |
| - | |
324 |
| - | |
325 |
| - | |
326 |
| - | |
327 |
| - | |
328 |
| - | |
329 |
| - | |
330 |
| - | |
331 |
| - | |
332 |
| - | |
333 |
| - | |
334 |
| - | |
335 |
| - | |
336 |
| - | |
337 |
| - | |
338 |
| - | |
339 |
| - | |
340 |
| - | |
341 |
| - | |
342 |
| - | |
343 |
| - | |
344 |
| - | |
345 |
| - | |
346 |
| - | |
347 |
| - | |
348 |
| - | |
349 |
| - | |
350 |
| - | |
351 |
| - | |
352 |
| - | |
353 |
| - | |
354 |
| - | |
355 |
| - | |
356 |
| - | |
357 |
| - | |
358 |
| - | |
359 |
| - | |
360 |
| - | |
361 |
| - | |
362 |
| - | |
363 |
| - | |
364 |
| - | |
365 |
| - | |
366 |
| - | |
367 |
| - | |
368 |
| - | |
369 |
| - | |
370 |
| - | |
371 |
| - | |
372 |
| - | |
373 |
| - | |
374 |
| - | |
375 |
| - | |
376 |
| - | |
377 |
| - | |
378 |
| - | |
379 |
| - | |
380 |
| - | |
381 |
| - | |
382 |
| - | |
383 |
| - | |
384 |
| - | |
385 |
| - | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
| 319 | + | |
386 | 320 |
| |
387 | 321 |
| |
388 | 322 |
| |
|
Lines changed: 1 addition & 1 deletion
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
33 | 33 |
| |
34 | 34 |
| |
35 | 35 |
| |
36 |
| - | |
| 36 | + | |
37 | 37 |
| |
38 | 38 |
| |
39 | 39 |
| |
|
0 commit comments
Comments
(0)