Changeset: 4dabe20adfcc for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/4dabe20adfcc Modified Files: sql/storage/store.c Branch: Jan2022 Log Message:
Backport https://www.monetdb.org/hg/MonetDB/rev/842ad6f94b77 changes into Jan2022 to resolve testweb reported errors. diffs (101 lines): diff --git a/sql/storage/store.c b/sql/storage/store.c --- a/sql/storage/store.c +++ b/sql/storage/store.c @@ -796,7 +796,7 @@ load_table(sql_trans *tr, sql_schema *s, if (!k || ol_add(t->keys, &k->base) || os_add(s->keys, tr, k->base.name, dup_base(&k->base)) || - os_add(tr->cat->objects, tr, k->base.name, dup_base(&k->base))) { + (isGlobal(t) && os_add(tr->cat->objects, tr, k->base.name, dup_base(&k->base)))) { table_destroy(store, t); return NULL; } @@ -2941,9 +2941,8 @@ key_dup(sql_trans *tr, sql_key *k, sql_t list_append(nk->columns, kc_dup(tr, okc, t)); } - if (isGlobal(t) && - ((res = os_add(t->s->keys, tr, nk->base.name, dup_base(&nk->base))) || - (res = os_add(tr->cat->objects, tr, nk->base.name, dup_base(&nk->base))))) { + if ((res = os_add(t->s->keys, tr, nk->base.name, dup_base(&nk->base))) || + (isGlobal(t) && (res = os_add(tr->cat->objects, tr, nk->base.name, dup_base(&nk->base))))) { return res; } *kres = nk; @@ -3398,7 +3397,7 @@ sql_trans_copy_idx( sql_trans *tr, sql_t if ((res = ol_add(t->idxs, &ni->base))) return res; - if (isGlobal(t) && (res = os_add(t->s->idxs, tr, ni->base.name, dup_base(&ni->base)))) + if ((res = os_add(t->s->idxs, tr, ni->base.name, dup_base(&ni->base)))) return res; if ((res = store_reset_sql_functions(tr, t->base.id))) /* reset sql functions depending on the table */ return res; @@ -3469,7 +3468,7 @@ sql_trans_copy_trigger( sql_trans *tr, s if ((res = ol_add(t->triggers, &nt->base))) return res; - if (isGlobal(t) && (res = os_add(t->s->triggers, tr, nt->base.name, dup_base(&nt->base)))) + if ((res = os_add(t->s->triggers, tr, nt->base.name, dup_base(&nt->base)))) return res; if ((res = store_reset_sql_functions(tr, t->base.id))) /* reset sql functions depending on the table */ return res; @@ -4244,9 +4243,8 @@ sys_drop_idx(sql_trans *tr, sql_idx * i, } /* remove idx from schema and table */ - if (isGlobal(i->t)) - if ((res = os_del(i->t->s->idxs, tr, i->base.name, dup_base(&i->base)))) - return res; + if ((res = os_del(i->t->s->idxs, tr, i->base.name, dup_base(&i->base)))) + return res; if (!isNew(i) && (res = sql_trans_add_dependency_change(tr, i->base.id, ddl))) return res; if ((res = sql_trans_drop_dependencies(tr, i->base.id))) @@ -4294,12 +4292,10 @@ sys_drop_key(sql_trans *tr, sql_key *k, return res; } /* remove key from schema */ - if (isGlobal(k->t)) { - if ((res = os_del(k->t->s->keys, tr, k->base.name, dup_base(&k->base)))) - return res; - if ((res = os_del(tr->cat->objects, tr, k->base.name, dup_base(&k->base)))) - return res; - } + if ((res = os_del(k->t->s->keys, tr, k->base.name, dup_base(&k->base)))) + return res; + if (isGlobal(k->t) && (res = os_del(tr->cat->objects, tr, k->base.name, dup_base(&k->base)))) + return res; if (k->t->pkey == (sql_ukey*)k) k->t->pkey = NULL; @@ -4426,9 +4422,8 @@ sys_drop_trigger(sql_trans *tr, sql_trig return res; } /* remove trigger from schema */ - if (isGlobal(i->t)) - if ((res = os_del(i->t->s->triggers, tr, i->base.name, dup_base(&i->base)))) - return res; + if ((res = os_del(i->t->s->triggers, tr, i->base.name, dup_base(&i->base)))) + return res; if (!isNew(i) && (res = sql_trans_add_dependency_change(tr, i->base.id, ddl))) return res; if ((res = sql_trans_drop_dependencies(tr, i->base.id))) @@ -6317,7 +6312,7 @@ sql_trans_create_ukey(sql_key **kres, sq if ((res = ol_add(t->keys, &nk->base))) return res; if ((res = os_add(t->s->keys, tr, nk->base.name, dup_base(&nk->base))) || - (res = os_add(tr->cat->objects, tr, nk->base.name, dup_base(&nk->base)))) + (isGlobal(t) && (res = os_add(tr->cat->objects, tr, nk->base.name, dup_base(&nk->base))))) return res; if ((res = store->table_api.table_insert(tr, syskey, &nk->base.id, &t->base.id, &nk->type, &nk->base.name, (nk->type == fkey) ? &((sql_fkey *) nk)->rkey : &neg, &action))) @@ -6366,7 +6361,7 @@ sql_trans_create_fkey(sql_fkey **kres, s if ((res = ol_add(t->keys, &nk->base))) return res; if ((res = os_add(t->s->keys, tr, nk->base.name, dup_base(&nk->base))) || - (res = os_add(tr->cat->objects, tr, nk->base.name, dup_base(&nk->base)))) + (isGlobal(t) && (res = os_add(tr->cat->objects, tr, nk->base.name, dup_base(&nk->base))))) return res; if ((res = store->table_api.table_insert(tr, syskey, &nk->base.id, &t->base.id, &nk->type, &nk->base.name, (nk->type == fkey) ? &((sql_fkey *) nk)->rkey : &neg, &action))) _______________________________________________ checkin-list mailing list -- [email protected] To unsubscribe send an email to [email protected]
