forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commite3f9dca
committed
Ensure we allocate NAMEDATALEN bytes for names in Index Only Scans
As an optimization, we store "name" columns as cstrings in btreeindexes.Here we modify it so that Index Only Scans convert these cstrings backto names with NAMEDATALEN bytes rather than storing the cstring in thetuple slot, as was happening previously.Bug: #17855Reported-by: Alexander LakhinReviewed-by: Alexander Lakhin, Tom LaneDiscussion:https://postgr.es/m/17855-5f523e0f9769a566@postgresql.orgBackpatch-through: 12, all supported versions1 parent56d30fb commite3f9dca
File tree
5 files changed
+141
-9
lines changed- src
- backend/executor
- include
- catalog
- nodes
- test/regress
- expected
- sql
5 files changed
+141
-9
lines changedLines changed: 88 additions & 7 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
35 | 35 |
| |
36 | 36 |
| |
37 | 37 |
| |
| 38 | + | |
38 | 39 |
| |
39 | 40 |
| |
40 | 41 |
| |
41 | 42 |
| |
42 | 43 |
| |
43 | 44 |
| |
| 45 | + | |
44 | 46 |
| |
45 | 47 |
| |
46 | 48 |
| |
47 | 49 |
| |
48 | 50 |
| |
49 |
| - | |
50 |
| - | |
| 51 | + | |
| 52 | + | |
51 | 53 |
| |
52 | 54 |
| |
53 | 55 |
| |
| |||
208 | 210 |
| |
209 | 211 |
| |
210 | 212 |
| |
211 |
| - | |
| 213 | + | |
212 | 214 |
| |
213 | 215 |
| |
214 | 216 |
| |
| |||
266 | 268 |
| |
267 | 269 |
| |
268 | 270 |
| |
269 |
| - | |
| 271 | + | |
| 272 | + | |
270 | 273 |
| |
271 | 274 |
| |
272 | 275 |
| |
| |||
279 | 282 |
| |
280 | 283 |
| |
281 | 284 |
| |
| 285 | + | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
| 298 | + | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
| 305 | + | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
282 | 316 |
| |
283 | 317 |
| |
284 | 318 |
| |
| |||
492 | 526 |
| |
493 | 527 |
| |
494 | 528 |
| |
| 529 | + | |
495 | 530 |
| |
496 | 531 |
| |
| 532 | + | |
| 533 | + | |
497 | 534 |
| |
498 | 535 |
| |
499 | 536 |
| |
| |||
566 | 603 |
| |
567 | 604 |
| |
568 | 605 |
| |
569 |
| - | |
| 606 | + | |
| 607 | + | |
570 | 608 |
| |
571 | 609 |
| |
572 | 610 |
| |
| |||
579 | 617 |
| |
580 | 618 |
| |
581 | 619 |
| |
582 |
| - | |
| 620 | + | |
583 | 621 |
| |
584 | 622 |
| |
585 | 623 |
| |
| |||
593 | 631 |
| |
594 | 632 |
| |
595 | 633 |
| |
596 |
| - | |
| 634 | + | |
597 | 635 |
| |
598 | 636 |
| |
599 | 637 |
| |
| |||
622 | 660 |
| |
623 | 661 |
| |
624 | 662 |
| |
| 663 | + | |
| 664 | + | |
| 665 | + | |
| 666 | + | |
| 667 | + | |
| 668 | + | |
| 669 | + | |
| 670 | + | |
| 671 | + | |
| 672 | + | |
| 673 | + | |
| 674 | + | |
| 675 | + | |
| 676 | + | |
| 677 | + | |
| 678 | + | |
| 679 | + | |
| 680 | + | |
| 681 | + | |
| 682 | + | |
| 683 | + | |
| 684 | + | |
| 685 | + | |
| 686 | + | |
| 687 | + | |
| 688 | + | |
| 689 | + | |
| 690 | + | |
| 691 | + | |
| 692 | + | |
| 693 | + | |
| 694 | + | |
| 695 | + | |
| 696 | + | |
| 697 | + | |
| 698 | + | |
| 699 | + | |
| 700 | + | |
| 701 | + | |
| 702 | + | |
| 703 | + | |
| 704 | + | |
| 705 | + | |
625 | 706 |
| |
626 | 707 |
| |
627 | 708 |
| |
|
Lines changed: 5 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
91 | 91 |
| |
92 | 92 |
| |
93 | 93 |
| |
94 |
| - | |
95 |
| - | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
96 | 99 |
| |
97 | 100 |
| |
98 | 101 |
| |
|
Lines changed: 4 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1467 | 1467 |
| |
1468 | 1468 |
| |
1469 | 1469 |
| |
| 1470 | + | |
| 1471 | + | |
1470 | 1472 |
| |
1471 | 1473 |
| |
1472 | 1474 |
| |
| |||
1486 | 1488 |
| |
1487 | 1489 |
| |
1488 | 1490 |
| |
| 1491 | + | |
| 1492 | + | |
1489 | 1493 |
| |
1490 | 1494 |
| |
1491 | 1495 |
| |
|
Lines changed: 25 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
399 | 399 |
| |
400 | 400 |
| |
401 | 401 |
| |
| 402 | + | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
| 406 | + | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
| 412 | + | |
| 413 | + | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
| 417 | + | |
| 418 | + | |
| 419 | + | |
| 420 | + | |
| 421 | + | |
| 422 | + | |
| 423 | + | |
| 424 | + | |
| 425 | + | |
| 426 | + |
Lines changed: 19 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
217 | 217 |
| |
218 | 218 |
| |
219 | 219 |
| |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + |
0 commit comments
Comments
(0)