- Notifications
You must be signed in to change notification settings - Fork28
Commitf4e031c
committed
Add bms_next_member(), and use it where appropriate.
This patch adds a way of iterating through the members of a bitmapsetnondestructively, unlike the old way with bms_first_member(). Whilebms_next_member() is very slightly slower than bms_first_member()(at least for typical-size bitmapsets), eliminating the need to pallocand pfree a temporary copy of the target bitmapset is a significant win.So this method should be preferred in all cases where a temporary copywould be necessary.Tom Lane, with suggestions from Dean Rasheed and David Rowley1 parent96d66bc commitf4e031c
File tree
13 files changed
+114
-76
lines changed- contrib
- postgres_fdw
- sepgsql
- src
- backend
- executor
- nodes
- optimizer
- path
- util
- rewrite
- include/nodes
- pl/plpgsql/src
13 files changed
+114
-76
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1198 | 1198 | | |
1199 | 1199 | | |
1200 | 1200 | | |
1201 | | - | |
1202 | | - | |
| 1201 | + | |
1203 | 1202 | | |
1204 | | - | |
| 1203 | + | |
| 1204 | + | |
1205 | 1205 | | |
1206 | | - | |
1207 | | - | |
| 1206 | + | |
| 1207 | + | |
| 1208 | + | |
| 1209 | + | |
1208 | 1210 | | |
1209 | | - | |
| 1211 | + | |
1210 | 1212 | | |
1211 | 1213 | | |
1212 | 1214 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
93 | 93 | | |
94 | 94 | | |
95 | 95 | | |
96 | | - | |
97 | | - | |
98 | 96 | | |
99 | | - | |
100 | 97 | | |
101 | 98 | | |
102 | 99 | | |
| |||
105 | 102 | | |
106 | 103 | | |
107 | 104 | | |
108 | | - | |
109 | | - | |
| 105 | + | |
| 106 | + | |
110 | 107 | | |
111 | | - | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
112 | 111 | | |
113 | 112 | | |
114 | 113 | | |
| |||
128 | 127 | | |
129 | 128 | | |
130 | 129 | | |
131 | | - | |
132 | | - | |
| 130 | + | |
| 131 | + | |
133 | 132 | | |
134 | 133 | | |
135 | 134 | | |
136 | | - | |
137 | 135 | | |
138 | 136 | | |
139 | 137 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
547 | 547 | | |
548 | 548 | | |
549 | 549 | | |
550 | | - | |
551 | 550 | | |
552 | 551 | | |
553 | 552 | | |
| |||
614 | 613 | | |
615 | 614 | | |
616 | 615 | | |
617 | | - | |
618 | | - | |
| 616 | + | |
| 617 | + | |
619 | 618 | | |
620 | | - | |
621 | | - | |
622 | | - | |
| 619 | + | |
| 620 | + | |
| 621 | + | |
| 622 | + | |
623 | 623 | | |
624 | 624 | | |
625 | 625 | | |
| |||
628 | 628 | | |
629 | 629 | | |
630 | 630 | | |
631 | | - | |
| 631 | + | |
632 | 632 | | |
633 | 633 | | |
634 | 634 | | |
635 | 635 | | |
636 | | - | |
637 | 636 | | |
638 | 637 | | |
639 | 638 | | |
| |||
656 | 655 | | |
657 | 656 | | |
658 | 657 | | |
659 | | - | |
660 | | - | |
| 658 | + | |
| 659 | + | |
661 | 660 | | |
662 | | - | |
663 | | - | |
664 | | - | |
| 661 | + | |
| 662 | + | |
| 663 | + | |
| 664 | + | |
665 | 665 | | |
666 | 666 | | |
667 | 667 | | |
668 | 668 | | |
669 | 669 | | |
670 | 670 | | |
671 | | - | |
| 671 | + | |
672 | 672 | | |
673 | 673 | | |
674 | 674 | | |
675 | 675 | | |
676 | | - | |
677 | 676 | | |
678 | 677 | | |
679 | 678 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
793 | 793 | | |
794 | 794 | | |
795 | 795 | | |
796 | | - | |
| 796 | + | |
797 | 797 | | |
798 | 798 | | |
799 | 799 | | |
800 | 800 | | |
801 | 801 | | |
802 | 802 | | |
803 | 803 | | |
804 | | - | |
805 | | - | |
| 804 | + | |
806 | 805 | | |
807 | | - | |
808 | | - | |
| 806 | + | |
| 807 | + | |
| 808 | + | |
809 | 809 | | |
810 | 810 | | |
811 | 811 | | |
| |||
840 | 840 | | |
841 | 841 | | |
842 | 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 | + | |
| 881 | + | |
| 882 | + | |
| 883 | + | |
| 884 | + | |
| 885 | + | |
| 886 | + | |
| 887 | + | |
| 888 | + | |
| 889 | + | |
| 890 | + | |
| 891 | + | |
| 892 | + | |
| 893 | + | |
| 894 | + | |
| 895 | + | |
| 896 | + | |
| 897 | + | |
| 898 | + | |
| 899 | + | |
| 900 | + | |
843 | 901 | | |
844 | 902 | | |
845 | 903 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
184 | 184 | | |
185 | 185 | | |
186 | 186 | | |
187 | | - | |
188 | 187 | | |
189 | 188 | | |
190 | 189 | | |
191 | 190 | | |
192 | | - | |
193 | | - | |
| 191 | + | |
| 192 | + | |
194 | 193 | | |
195 | | - | |
196 | 194 | | |
197 | 195 | | |
198 | 196 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2272 | 2272 | | |
2273 | 2273 | | |
2274 | 2274 | | |
2275 | | - | |
2276 | 2275 | | |
2277 | 2276 | | |
2278 | 2277 | | |
2279 | | - | |
2280 | | - | |
| 2278 | + | |
| 2279 | + | |
2281 | 2280 | | |
2282 | 2281 | | |
2283 | 2282 | | |
2284 | 2283 | | |
2285 | 2284 | | |
2286 | 2285 | | |
2287 | | - | |
2288 | 2286 | | |
2289 | 2287 | | |
2290 | 2288 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1875 | 1875 | | |
1876 | 1876 | | |
1877 | 1877 | | |
1878 | | - | |
1879 | | - | |
1880 | | - | |
| 1878 | + | |
| 1879 | + | |
1881 | 1880 | | |
1882 | 1881 | | |
1883 | 1882 | | |
| |||
1900 | 1899 | | |
1901 | 1900 | | |
1902 | 1901 | | |
1903 | | - | |
1904 | 1902 | | |
1905 | 1903 | | |
1906 | 1904 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
96 | 96 | | |
97 | 97 | | |
98 | 98 | | |
99 | | - | |
100 | 99 | | |
101 | 100 | | |
102 | | - | |
103 | | - | |
| 101 | + | |
| 102 | + | |
104 | 103 | | |
105 | 104 | | |
106 | 105 | | |
107 | 106 | | |
108 | 107 | | |
109 | | - | |
110 | 108 | | |
111 | 109 | | |
112 | 110 | | |
| |||
125 | 123 | | |
126 | 124 | | |
127 | 125 | | |
128 | | - | |
129 | 126 | | |
130 | 127 | | |
131 | | - | |
132 | | - | |
| 128 | + | |
| 129 | + | |
133 | 130 | | |
134 | 131 | | |
135 | 132 | | |
| |||
140 | 137 | | |
141 | 138 | | |
142 | 139 | | |
143 | | - | |
144 | 140 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
773 | 773 | | |
774 | 774 | | |
775 | 775 | | |
776 | | - | |
777 | 776 | | |
778 | 777 | | |
779 | | - | |
780 | | - | |
| 778 | + | |
| 779 | + | |
781 | 780 | | |
782 | 781 | | |
783 | 782 | | |
| |||
786 | 785 | | |
787 | 786 | | |
788 | 787 | | |
789 | | - | |
790 | 788 | | |
791 | 789 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2456 | 2456 | | |
2457 | 2457 | | |
2458 | 2458 | | |
2459 | | - | |
2460 | | - | |
| 2459 | + | |
2461 | 2460 | | |
2462 | | - | |
2463 | | - | |
| 2461 | + | |
| 2462 | + | |
2464 | 2463 | | |
2465 | 2464 | | |
2466 | 2465 | | |
| |||
2510 | 2509 | | |
2511 | 2510 | | |
2512 | 2511 | | |
2513 | | - | |
2514 | 2512 | | |
2515 | 2513 | | |
2516 | 2514 | | |
| |||
0 commit comments
Comments
(0)