Commit afdfcd3
committed
Miscellaneous cleanup of regular-expression compiler.
Revert our previous addition of "all" flags to copyins() and copyouts();
they're no longer needed, and were never anything but an unsightly hack.
Improve a couple of infelicities in the REG_DEBUG code for dumping
the NFA data structure, including adding code to count the total
number of states and arcs.
Add a couple of missed error checks.
Add some more documentation in the README file, and some regression tests
illustrating cases that exceeded the state-count limit and/or took
unreasonable amounts of time before this set of patches.
Back-patch to all supported branches.1 parent 538b3b8 commit afdfcd3
File tree
5 files changed
+153
-54
lines changed- src
- backend/regex
- test/regress
- expected
- sql
5 files changed
+153
-54
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
76 | 76 | | |
77 | 77 | | |
78 | 78 | | |
79 | | - | |
80 | | - | |
81 | | - | |
82 | | - | |
83 | | - | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
84 | 83 | | |
85 | 84 | | |
86 | 85 | | |
| |||
139 | 138 | | |
140 | 139 | | |
141 | 140 | | |
142 | | - | |
143 | | - | |
144 | | - | |
145 | | - | |
146 | | - | |
147 | | - | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
148 | 148 | | |
149 | 149 | | |
150 | 150 | | |
| |||
296 | 296 | | |
297 | 297 | | |
298 | 298 | | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
| 319 | + | |
| 320 | + | |
| 321 | + | |
| 322 | + | |
| 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 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
823 | 823 | | |
824 | 824 | | |
825 | 825 | | |
826 | | - | |
827 | | - | |
828 | 826 | | |
829 | 827 | | |
830 | 828 | | |
831 | 829 | | |
832 | | - | |
833 | | - | |
| 830 | + | |
834 | 831 | | |
835 | 832 | | |
836 | 833 | | |
| |||
840 | 837 | | |
841 | 838 | | |
842 | 839 | | |
843 | | - | |
844 | | - | |
| 840 | + | |
845 | 841 | | |
846 | 842 | | |
847 | 843 | | |
| |||
873 | 869 | | |
874 | 870 | | |
875 | 871 | | |
876 | | - | |
877 | | - | |
878 | | - | |
879 | | - | |
880 | | - | |
881 | | - | |
882 | 872 | | |
883 | 873 | | |
884 | 874 | | |
| |||
904 | 894 | | |
905 | 895 | | |
906 | 896 | | |
907 | | - | |
908 | | - | |
909 | | - | |
910 | | - | |
911 | | - | |
912 | | - | |
913 | 897 | | |
914 | 898 | | |
915 | 899 | | |
| |||
1107 | 1091 | | |
1108 | 1092 | | |
1109 | 1093 | | |
1110 | | - | |
1111 | | - | |
1112 | 1094 | | |
1113 | 1095 | | |
1114 | 1096 | | |
1115 | 1097 | | |
1116 | | - | |
1117 | | - | |
| 1098 | + | |
1118 | 1099 | | |
1119 | 1100 | | |
1120 | 1101 | | |
| |||
1124 | 1105 | | |
1125 | 1106 | | |
1126 | 1107 | | |
1127 | | - | |
1128 | | - | |
| 1108 | + | |
1129 | 1109 | | |
1130 | 1110 | | |
1131 | 1111 | | |
| |||
1157 | 1137 | | |
1158 | 1138 | | |
1159 | 1139 | | |
1160 | | - | |
1161 | | - | |
1162 | | - | |
1163 | | - | |
1164 | | - | |
1165 | | - | |
1166 | 1140 | | |
1167 | 1141 | | |
1168 | 1142 | | |
| |||
1188 | 1162 | | |
1189 | 1163 | | |
1190 | 1164 | | |
1191 | | - | |
1192 | | - | |
1193 | | - | |
1194 | | - | |
1195 | | - | |
1196 | | - | |
1197 | 1165 | | |
1198 | 1166 | | |
1199 | 1167 | | |
| |||
1452 | 1420 | | |
1453 | 1421 | | |
1454 | 1422 | | |
| 1423 | + | |
| 1424 | + | |
| 1425 | + | |
| 1426 | + | |
1455 | 1427 | | |
1456 | 1428 | | |
1457 | 1429 | | |
| |||
1568 | 1540 | | |
1569 | 1541 | | |
1570 | 1542 | | |
1571 | | - | |
| 1543 | + | |
1572 | 1544 | | |
1573 | 1545 | | |
1574 | 1546 | | |
| |||
1735 | 1707 | | |
1736 | 1708 | | |
1737 | 1709 | | |
1738 | | - | |
| 1710 | + | |
1739 | 1711 | | |
1740 | 1712 | | |
1741 | 1713 | | |
| |||
2952 | 2924 | | |
2953 | 2925 | | |
2954 | 2926 | | |
| 2927 | + | |
| 2928 | + | |
2955 | 2929 | | |
2956 | 2930 | | |
2957 | 2931 | | |
| |||
2964 | 2938 | | |
2965 | 2939 | | |
2966 | 2940 | | |
| 2941 | + | |
2967 | 2942 | | |
| 2943 | + | |
| 2944 | + | |
| 2945 | + | |
| 2946 | + | |
2968 | 2947 | | |
2969 | 2948 | | |
2970 | 2949 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
136 | 136 | | |
137 | 137 | | |
138 | 138 | | |
139 | | - | |
| 139 | + | |
140 | 140 | | |
141 | 141 | | |
142 | | - | |
| 142 | + | |
143 | 143 | | |
144 | 144 | | |
145 | 145 | | |
| |||
181 | 181 | | |
182 | 182 | | |
183 | 183 | | |
184 | | - | |
185 | 184 | | |
186 | 185 | | |
187 | 186 | | |
| |||
614 | 613 | | |
615 | 614 | | |
616 | 615 | | |
617 | | - | |
| 616 | + | |
| 617 | + | |
| 618 | + | |
618 | 619 | | |
619 | 620 | | |
620 | 621 | | |
| |||
2014 | 2015 | | |
2015 | 2016 | | |
2016 | 2017 | | |
2017 | | - | |
| 2018 | + | |
2018 | 2019 | | |
2019 | 2020 | | |
2020 | 2021 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
229 | 229 | | |
230 | 230 | | |
231 | 231 | | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
| 260 | + | |
| 261 | + | |
| 262 | + | |
| 263 | + | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
232 | 267 | | |
233 | 268 | | |
234 | 269 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
55 | 55 | | |
56 | 56 | | |
57 | 57 | | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
58 | 69 | | |
59 | 70 | | |
60 | 71 | | |
| |||
0 commit comments