forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit676887a
committed
Implementation of subscripting for jsonb
Subscripting for jsonb does not support slices, does not have a limit for thenumber of subscripts, and an assignment expects a replace value to have jsonbtype. There is also one functional difference between assignment viasubscripting and assignment via jsonb_set(). When an original jsonb containeris NULL, the subscripting replaces it with an empty jsonb and proceeds withan assignment.For the sake of code reuse, we rearrange some parts of jsonb functionalityto allow the usage of the same functions for jsonb_set and assign subscriptingoperation.The original idea belongs to Oleg Bartunov.Catversion is bumped.Discussion:https://postgr.es/m/CA%2Bq6zcV8qvGcDXurwwgUbwACV86Th7G80pnubg42e-p9gsSf%3Dg%40mail.gmail.comDiscussion:https://postgr.es/m/CA%2Bq6zcX3mdxGCgdThzuySwH-ApyHHM-G4oB1R0fn0j2hZqqkLQ%40mail.gmail.comDiscussion:https://postgr.es/m/CA%2Bq6zcVDuGBv%3DM0FqBYX8DPebS3F_0KQ6OVFobGJPM507_SZ_w%40mail.gmail.comDiscussion:https://postgr.es/m/CA%2Bq6zcVovR%2BXY4mfk-7oNk-rF91gH0PebnNfuUjuuDsyHjOcVA%40mail.gmail.comAuthor: Dmitry DolgovReviewed-by: Tom Lane, Arthur Zakirov, Pavel Stehule, Dian M FayReviewed-by: Andrew Dunstan, Chapman Flack, Merlin Moncure, Peter GeogheganReviewed-by: Alvaro Herrera, Jim Nasby, Josh Berkus, Victor WagnerReviewed-by: Aleksander Alekseev, Robert Haas, Oleg Bartunov1 parentdc43492 commit676887a
File tree
12 files changed
+988
-108
lines changed- doc/src/sgml
- src
- backend/utils/adt
- include
- catalog
- utils
- test/regress
- expected
- sql
- tools/pgindent
12 files changed
+988
-108
lines changedLines changed: 51 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
602 | 602 |
| |
603 | 603 |
| |
604 | 604 |
| |
| 605 | + | |
| 606 | + | |
| 607 | + | |
| 608 | + | |
| 609 | + | |
| 610 | + | |
| 611 | + | |
| 612 | + | |
| 613 | + | |
| 614 | + | |
| 615 | + | |
| 616 | + | |
| 617 | + | |
| 618 | + | |
| 619 | + | |
| 620 | + | |
| 621 | + | |
| 622 | + | |
| 623 | + | |
| 624 | + | |
| 625 | + | |
| 626 | + | |
| 627 | + | |
| 628 | + | |
| 629 | + | |
| 630 | + | |
| 631 | + | |
| 632 | + | |
| 633 | + | |
| 634 | + | |
| 635 | + | |
| 636 | + | |
| 637 | + | |
| 638 | + | |
| 639 | + | |
| 640 | + | |
| 641 | + | |
| 642 | + | |
| 643 | + | |
| 644 | + | |
| 645 | + | |
| 646 | + | |
| 647 | + | |
| 648 | + | |
| 649 | + | |
| 650 | + | |
| 651 | + | |
| 652 | + | |
| 653 | + | |
| 654 | + | |
| 655 | + | |
605 | 656 |
| |
606 | 657 |
| |
607 | 658 |
| |
|
Lines changed: 1 addition & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
50 | 50 |
| |
51 | 51 |
| |
52 | 52 |
| |
| 53 | + | |
53 | 54 |
| |
54 | 55 |
| |
55 | 56 |
| |
|
Lines changed: 62 additions & 10 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
68 | 68 |
| |
69 | 69 |
| |
70 | 70 |
| |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
71 | 79 |
| |
72 | 80 |
| |
73 | 81 |
| |
74 |
| - | |
75 |
| - | |
76 |
| - | |
77 |
| - | |
78 |
| - | |
79 |
| - | |
80 |
| - | |
81 |
| - | |
82 |
| - | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
83 | 90 |
| |
84 | 91 |
| |
85 | 92 |
| |
| |||
563 | 570 |
| |
564 | 571 |
| |
565 | 572 |
| |
| 573 | + | |
| 574 | + | |
| 575 | + | |
| 576 | + | |
| 577 | + | |
| 578 | + | |
| 579 | + | |
| 580 | + | |
| 581 | + | |
| 582 | + | |
| 583 | + | |
| 584 | + | |
| 585 | + | |
| 586 | + | |
| 587 | + | |
| 588 | + | |
| 589 | + | |
| 590 | + | |
| 591 | + | |
| 592 | + | |
| 593 | + | |
| 594 | + | |
| 595 | + | |
| 596 | + | |
566 | 597 |
| |
567 | 598 |
| |
568 | 599 |
| |
| |||
573 | 604 |
| |
574 | 605 |
| |
575 | 606 |
| |
| 607 | + | |
| 608 | + | |
| 609 | + | |
| 610 | + | |
| 611 | + | |
| 612 | + | |
| 613 | + | |
| 614 | + | |
| 615 | + | |
| 616 | + | |
| 617 | + | |
| 618 | + | |
| 619 | + | |
| 620 | + | |
| 621 | + | |
| 622 | + | |
| 623 | + | |
| 624 | + | |
| 625 | + | |
576 | 626 |
| |
577 | 627 |
| |
578 |
| - | |
| 628 | + | |
| 629 | + | |
| 630 | + | |
579 | 631 |
| |
580 | 632 |
| |
581 | 633 |
| |
|
0 commit comments
Comments
(0)