• Sergei Golubchik's avatar
    MDEV-29895 prepared view crash server (unit.conc_view) · 09c42536
    Sergei Golubchik authored
    it's incorrect to use change_item_tree() to replace arguments
    of top-level AND/OR, because they (arguments) are stored in a List,
    so a pointer to an argument is in the list_node, and individual
    list_node's of top-level AND/OR can be deleted in Item_cond::build_equal_items().
    In that case rollback_item_tree_changes() will modify the deleted object.
    
    Luckily, it's not needed to use change_item_tree() for top-level
    AND/OR, because the whole top-level item is copied and preserved
    in prep_where and prep_on, and restored from there.
    
    So, just don't.
    09c42536
item_cmpfunc.cc 212 KB