Changeset: 55a8cb04a008 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=55a8cb04a008
Modified Files:
        sql/storage/objectset.c
Branch: nospare
Log Message:

Fix os_del.


diffs (42 lines):

diff --git a/sql/storage/objectset.c b/sql/storage/objectset.c
--- a/sql/storage/objectset.c
+++ b/sql/storage/objectset.c
@@ -631,7 +631,7 @@ os_del_name_based(objectset *os, struct 
        versionchain *name_based_node;
        if (ov->id_based_older && strcmp(ov->id_based_older->obj->name, name) 
== 0)
                name_based_node = ov->id_based_older->name_based_chain;
-       else
+       else if (os->unique) // Previous name based objectversion is of a 
different id, so now we do have to perform an extensive look up
                name_based_node = find_name(os, name);
 
        if (name_based_node) {
@@ -661,7 +661,7 @@ os_del_id_based(objectset *os, struct sq
        versionchain *id_based_node;
        if (ov->name_based_older && ov->name_based_older->obj->id == id)
                id_based_node = ov->name_based_older->id_based_chain;
-       else
+       else // Previous id based objectversion is of a different name, so now 
we do have to perform an extensive look up
                id_based_node = find_id(os, id);
 
        if (id_based_node) {
@@ -694,15 +694,13 @@ os_del(objectset *os, struct sql_trans *
        ov->ts = tr->tid;
        ov->obj = b;
 
-       if (os->unique) {
-               if (os_del_name_based(os, tr, name, ov)) {
-                       // TODO clean up ov
-                       assert(0);
-                       return -1;
-               }
+       if (os_del_id_based(os, tr, b->id, ov)) {
+               // TODO clean up ov
+               assert(0);
+               return -1;
        }
 
-       if (os_del_id_based(os, tr, b->id, ov)) {
+       if (os_del_name_based(os, tr, name, ov)) {
                // TODO clean up ov
                assert(0);
                return -1;
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to