Changeset: 03c4fefc2bf6 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/03c4fefc2bf6
Modified Files:
sql/storage/store.c
Branch: Jul2021
Log Message:
Removing wrong destroy calls
diffs (136 lines):
diff --git a/sql/storage/store.c b/sql/storage/store.c
--- a/sql/storage/store.c
+++ b/sql/storage/store.c
@@ -2908,42 +2908,28 @@ sql_trans_copy_key( sql_trans *tr, sql_t
if (nk->type == fkey)
action = (fk->on_update<<8) + fk->on_delete;
- 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))) {
- key_destroy(store, nk);
+ 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)))
return res;
- }
-
- if (nk->type == fkey && (res = sql_trans_create_dependency(tr,
((sql_fkey *) nk)->rkey, nk->base.id, FKEY_DEPENDENCY))) {
- key_destroy(store, nk);
+
+ if (nk->type == fkey && (res = sql_trans_create_dependency(tr,
((sql_fkey *) nk)->rkey, nk->base.id, FKEY_DEPENDENCY)))
return res;
- }
for (n = nk->columns->h, nr = 0; n; n = n->next, nr++) {
sql_kc *kc = n->data;
- if ((res = store->table_api.table_insert(tr, syskc,
&nk->base.id, &kc->c->base.name, &nr, ATOMnilptr(TYPE_int)))) {
- key_destroy(store, nk);
+ if ((res = store->table_api.table_insert(tr, syskc,
&nk->base.id, &kc->c->base.name, &nr, ATOMnilptr(TYPE_int))))
return res;
- }
if (nk->type == fkey) {
- if ((res = sql_trans_create_dependency(tr,
kc->c->base.id, nk->base.id, FKEY_DEPENDENCY))) {
- key_destroy(store, nk);
+ if ((res = sql_trans_create_dependency(tr,
kc->c->base.id, nk->base.id, FKEY_DEPENDENCY)))
return res;
- }
} else if (nk->type == ukey) {
- if ((res = sql_trans_create_dependency(tr,
kc->c->base.id, nk->base.id, KEY_DEPENDENCY))) {
- key_destroy(store, nk);
+ if ((res = sql_trans_create_dependency(tr,
kc->c->base.id, nk->base.id, KEY_DEPENDENCY)))
return res;
- }
} else if (nk->type == pkey) {
- if ((res = sql_trans_create_dependency(tr,
kc->c->base.id, nk->base.id, KEY_DEPENDENCY))) {
- key_destroy(store, nk);
+ if ((res = sql_trans_create_dependency(tr,
kc->c->base.id, nk->base.id, KEY_DEPENDENCY)))
return res;
- }
- if ((res = sql_trans_alter_null(tr, kc->c, 0))) {
- key_destroy(store, nk);
+ if ((res = sql_trans_alter_null(tr, kc->c, 0)))
return res;
- }
}
}
if (kres)
@@ -5601,15 +5587,11 @@ sql_trans_create_ukey(sql_trans *tr, sql
if ((res = ol_add(t->keys, &nk->base)))
return NULL;
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)))) {
- key_destroy(store, nk);
+ (res = os_add(tr->cat->objects, tr, nk->base.name,
dup_base(&nk->base))))
return NULL;
- }
-
- 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))) {
- key_destroy(store, nk);
+
+ 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)))
return NULL;
- }
return nk;
}
@@ -5653,15 +5635,11 @@ sql_trans_create_fkey(sql_trans *tr, sql
if ((res = ol_add(t->keys, &nk->base)))
return NULL;
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)))) {
- key_destroy(store, nk);
+ (res = os_add(tr->cat->objects, tr, nk->base.name,
dup_base(&nk->base))))
return NULL;
- }
-
- 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))) {
- key_destroy(store, nk);
+
+ 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)))
return NULL;
- }
sql_trans_create_dependency(tr, ((sql_fkey *) nk)->rkey, nk->base.id,
FKEY_DEPENDENCY);
return (sql_fkey*) nk;
@@ -5887,18 +5865,14 @@ sql_trans_create_idx(sql_trans *tr, sql_
if (ol_add(t->idxs, &ni->base))
return NULL;
- if (os_add(t->s->idxs, tr, ni->base.name, dup_base(&ni->base))) {
- idx_destroy(store, ni);
+ if (os_add(t->s->idxs, tr, ni->base.name, dup_base(&ni->base)))
return NULL;
- }
if (!isDeclaredTable(t) && isTable(ni->t) && idx_has_column(ni->type))
store->storage_api.create_idx(tr, ni);
if (!isDeclaredTable(t))
- if (store->table_api.table_insert(tr, sysidx, &ni->base.id,
&t->base.id, &ni->type, &ni->base.name)) {
- idx_destroy(store, ni);
+ if (store->table_api.table_insert(tr, sysidx, &ni->base.id,
&t->base.id, &ni->type, &ni->base.name))
return NULL;
- }
return ni;
}
@@ -6021,9 +5995,8 @@ sql_trans_create_trigger(sql_trans *tr,
if (store->table_api.table_insert(tr, systrigger, &nt->base.id,
&nt->base.name, &t->base.id, &nt->time, &nt->orientation,
&nt->event,
(nt->old_name)?&nt->old_name:&strnil, (nt->new_name)?&nt->new_name:&strnil,
-
(nt->condition)?&nt->condition:&strnil, &nt->statement)) {
+
(nt->condition)?&nt->condition:&strnil, &nt->statement))
return NULL;
- }
return nt;
}
@@ -6101,10 +6074,8 @@ sql_trans_create_sequence(sql_trans *tr,
sql_table *sysseqs = find_sql_table(tr, syss, "sequences");
sql_sequence *seq = create_sql_sequence_with_id(tr->sa,
next_oid(tr->store), s, name, start, min, max, inc, cacheinc, cycle);
- if (os_add(s->seqs, tr, seq->base.name, &seq->base)) {
- seq_destroy(store, seq);
+ if (os_add(s->seqs, tr, seq->base.name, &seq->base))
return NULL;
- }
if (store->table_api.table_insert(tr, sysseqs, &seq->base.id,
&s->base.id, &seq->base.name, &seq->start, &seq->minvalue,
&seq->maxvalue,
&seq->increment, &seq->cacheinc, &seq->cycle))
return NULL;
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list