Changeset: 23e3b72e24a4 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/23e3b72e24a4
Modified Files:
gdk/gdk_bbp.c
gdk/gdk_delta.c
gdk/gdk_logger.c
Branch: Jan2022
Log Message:
Add some asserts that should help find BBPcheckbats errors.
diffs (43 lines):
diff --git a/gdk/gdk_bbp.c b/gdk/gdk_bbp.c
--- a/gdk/gdk_bbp.c
+++ b/gdk/gdk_bbp.c
@@ -1896,6 +1896,7 @@ new_bbpentry(FILE *fp, bat i, BUN size)
}
#endif
+ assert(size <= BBP_desc(i)->batCount || size == BUN_NONE);
if (size > BBP_desc(i)->batCount)
size = BBP_desc(i)->batCount;
if (fprintf(fp, "%d %u %s %s %d " BUNFMT " " BUNFMT " " OIDFMT,
@@ -3942,6 +3943,7 @@ BBPsync(int cnt, bat *restrict subcommit
if (lock)
MT_lock_unset(&GDKswapLock(i));
BATiter bi = bat_iterator(b);
+ assert(size <= bi.count || size ==
BUN_NONE);
if (size > bi.count)
size = bi.count;
MT_rwlock_rdlock(&b->thashlock);
diff --git a/gdk/gdk_delta.c b/gdk/gdk_delta.c
--- a/gdk/gdk_delta.c
+++ b/gdk/gdk_delta.c
@@ -35,6 +35,7 @@ BATcommit(BAT *b, BUN size)
{
if (b == NULL)
return;
+ assert(size <= BATcount(b) || size == BUN_NONE);
TRC_DEBUG(DELTA, "BATcommit1 %s free %zu ins " BUNFMT " base %p\n",
BATgetId(b), b->theap->free, b->batInserted, b->theap->base);
if (!BATdirty(b)) {
diff --git a/gdk/gdk_logger.c b/gdk/gdk_logger.c
--- a/gdk/gdk_logger.c
+++ b/gdk/gdk_logger.c
@@ -1449,7 +1449,8 @@ bm_get_counts(logger *lg)
static int
subcommit_list_add(int next, bat *n, BUN *sizes, bat bid, BUN sz)
{
- for(int i=0; i<next; i++) {
+ assert(sz <= BBP_desc(bid)->batCount || sz == BUN_NONE);
+ for (int i=0; i<next; i++) {
if (n[i] == bid) {
sizes[i] = sz;
return next;
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]