Changeset: 0149120d21ee for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/0149120d21ee
Modified Files:
sql/storage/bat/bat_storage.c
Branch: Jan2022
Log Message:
Avoid quadratic work. This fixes bug #7254.
diffs (25 lines):
diff --git a/sql/storage/bat/bat_storage.c b/sql/storage/bat/bat_storage.c
--- a/sql/storage/bat/bat_storage.c
+++ b/sql/storage/bat/bat_storage.c
@@ -282,11 +282,11 @@ segments2cs(sql_trans *tr, segments *seg
b->tnokey[1] = 0;
uint32_t *restrict dst;
+ BUN cnt = BATcount(b);
for (; s ; s=s->next) {
if (s->start >= nr)
break;
if (s->ts == tr->tid && s->end != s->start) {
- BUN cnt = BATcount(b);
if (cnt < s->start) { /* first mark as deleted ! */
size_t lnr = s->start-cnt;
size_t pos = cnt;
@@ -372,6 +372,8 @@ segments2cs(sql_trans *tr, segments *seg
}
assert(lnr==0);
}
+ if (cnt < s->end)
+ cnt = s->end;
}
}
if (nr > BATcount(b))
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]