Changeset: 353ff71626c1 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/353ff71626c1
Modified Files:
        gdk/gdk_select.c
        sql/test/BugTracker-2016/Tests/storagemodel.test
Branch: Jul2021
Log Message:

Disable imprints.
The problem with imprints is that they are created on parent bats.  In
the current situation, parent bats may get modified while selects are
being done on view, which are not affected by those changes.  However,
when the imprints have been created, they may well get immediately
discarded because the bat changed, causing a lot of work having been
done for nothing.  It is even worse when multiple selects on different
views of the same parent bat all want to create imprints.  They wait
for each other, and then when the first one is done and has discarded
the freshly created imprints, the second one comes along and does the
same thing.
Until we figure out a proper solution to this, imprints will need to
remain disabled.


diffs (33 lines):

diff --git a/gdk/gdk_select.c b/gdk/gdk_select.c
--- a/gdk/gdk_select.c
+++ b/gdk/gdk_select.c
@@ -1901,7 +1901,7 @@ BATselect(BAT *b, BAT *s, const void *tl
                tmp = NULL;
                Imprints *imprints = NULL;
                if (!equi &&
-                   imprintable(b->ttype) &&
+                   /* DISABLES CODE */ (0) && imprintable(b->ttype) &&
                    (!b->batTransient ||
                     (parent != 0 &&
                      (tmp = BBP_cache(parent)) != NULL &&
@@ -2252,7 +2252,7 @@ rangejoin(BAT *r1, BAT *r2, BAT *l, BAT 
                cnt = BATcount(r1);
                assert(r2 == NULL || BATcount(r1) == BATcount(r2));
        } else if (!anti && !symmetric &&
-                  imprintable(l->ttype) &&
+                  /* DISABLES CODE */ (0) && imprintable(l->ttype) &&
                   (BATcount(rl) > 2 ||
                    !l->batTransient ||
                    (VIEWtparent(l) != 0 &&
diff --git a/sql/test/BugTracker-2016/Tests/storagemodel.test 
b/sql/test/BugTracker-2016/Tests/storagemodel.test
--- a/sql/test/BugTracker-2016/Tests/storagemodel.test
+++ b/sql/test/BugTracker-2016/Tests/storagemodel.test
@@ -173,7 +173,7 @@ smallint
 writable
 2
 0
-1
+0
 
 statement ok
 call sys.storagemodelinit()
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to