forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commitebc584e
committed
Harden range_table_mutator() against null RangeTblEntry.subquery.
Commit64919aa made pull_up_simple_subquery set rte->subquery = NULLafter doing the deed, so that we don't waste cycles copying anow-useless subquery tree around. This turns out to create a core dumphazard in range_table_mutator, which supposes that that field is neverNULL. Apparently none of our own code invokes query_tree_mutator orrange_table_mutator on the top Query after subquery pullup; but itwouldn't be surprising if outside code does, and anyway I'm workingon a v16 patch that will need it.We can fix this cleanly by just getting rid of the special-casehandling of this field and treating it more like all the rest.I think the special case might be left over from a time whenQTW_DONT_COPY_QUERY was the default behavior, but that was eons ago.Thanks to Dean Rasheed for review.Discussion:https://postgr.es/m/545569.1656107045@sss.pgh.pa.us1 parent3ab4fc5 commitebc584e
1 file changed
+4
-12
lines changedLines changed: 4 additions & 12 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
2825 | 2825 |
| |
2826 | 2826 |
| |
2827 | 2827 |
| |
2828 |
| - | |
2829 |
| - | |
2830 |
| - | |
2831 |
| - | |
2832 |
| - | |
2833 | 2828 |
| |
2834 | 2829 |
| |
2835 | 2830 |
| |
| |||
3640 | 3635 |
| |
3641 | 3636 |
| |
3642 | 3637 |
| |
3643 |
| - | |
3644 |
| - | |
3645 |
| - | |
| 3638 | + | |
| 3639 | + | |
| 3640 | + | |
3646 | 3641 |
| |
3647 | 3642 |
| |
3648 | 3643 |
| |
| |||
3758 | 3753 |
| |
3759 | 3754 |
| |
3760 | 3755 |
| |
3761 |
| - | |
3762 |
| - | |
3763 |
| - | |
3764 |
| - | |
| 3756 | + | |
3765 | 3757 |
| |
3766 | 3758 |
| |
3767 | 3759 |
| |
|
0 commit comments
Comments
(0)