Changeset: f955059c1727 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f955059c1727
Modified Files:
        sql/backends/monet5/rel_bin.c
Branch: default
Log Message:

Defensive line if the join index types don't match, return the error


diffs (24 lines):

diff --git a/sql/backends/monet5/rel_bin.c b/sql/backends/monet5/rel_bin.c
--- a/sql/backends/monet5/rel_bin.c
+++ b/sql/backends/monet5/rel_bin.c
@@ -4962,7 +4962,9 @@ join_idx_update(backend *be, sql_idx * i
                        upd = stmt_col(be, c->c, ftids, ftids->partition);
                }
 
-               list_append(lje, check_types(be, &rc->c->type, upd, 
type_equal));
+               if (!upd || (upd = check_types(be, &rc->c->type, upd, 
type_equal)) == NULL)
+                       return NULL;
+               list_append(lje, upd);
                list_append(rje, stmt_col(be, rc->c, ptids, ptids->partition));
        }
        s = releqjoin(be, lje, rje, NULL, 0 /* use hash */, 0, 0);
@@ -5035,7 +5037,8 @@ update_idxs_and_check_keys(backend *be, 
                } else if (i->type == join_idx) {
                        if (updcol < 0)
                                return NULL;
-                       is = join_idx_update(be, i, rows, updates, updcol);
+                       if (!(is = join_idx_update(be, i, rows, updates, 
updcol)))
+                               return NULL;
                }
                if (i->key)
                        sql_update_check_key(be, updates, i->key, rows, is, 
updcol, l, pup);
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to