Changeset: dbc145adc6f5 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=dbc145adc6f5
Modified Files:
monetdb5/modules/kernel/bat5.c
Branch: Jul2017
Log Message:
Make thread safe.
diffs (47 lines):
diff --git a/monetdb5/modules/kernel/bat5.c b/monetdb5/modules/kernel/bat5.c
--- a/monetdb5/modules/kernel/bat5.c
+++ b/monetdb5/modules/kernel/bat5.c
@@ -146,15 +146,11 @@ infoHeap(BAT *bk, BAT*bv, Heap *hp, str
return GDK_SUCCEED;
}
-static char *
-oidtostr(oid i)
+static inline char *
+oidtostr(oid i, char *p, int len)
{
- int len = 48;
- static char bf[48];
- char *p = bf;
-
(void) OIDtoStr(&p, &len, &i);
- return bf;
+ return p;
}
/*
@@ -673,6 +669,7 @@ BKCinfo(bat *ret1, bat *ret2, const bat
{
const char *mode, *accessmode;
BAT *bk = NULL, *bv= NULL, *b;
+ char bf[oidStrlen];
if ((b = BATdescriptor(*bid)) == NULL) {
throw(MAL, "bat.getInfo", RUNTIME_OBJECT_MISSING);
@@ -737,14 +734,14 @@ BKCinfo(bat *ret1, bat *ret2, const bat
BUNappend(bv, BATdirty(b) ? "dirty" : "clean", FALSE) !=
GDK_SUCCEED ||
BUNappend(bk, "hseqbase", FALSE) != GDK_SUCCEED ||
- BUNappend(bv, oidtostr(b->hseqbase), FALSE) != GDK_SUCCEED ||
+ BUNappend(bv, oidtostr(b->hseqbase, bf, (int) sizeof(bf)), FALSE)
!= GDK_SUCCEED ||
BUNappend(bk, "tident", FALSE) != GDK_SUCCEED ||
BUNappend(bv, b->tident, FALSE) != GDK_SUCCEED ||
BUNappend(bk, "tdense", FALSE) != GDK_SUCCEED ||
BUNappend(bv, local_itoa((ssize_t)(BATtdense(b))), FALSE) !=
GDK_SUCCEED ||
BUNappend(bk, "tseqbase", FALSE) != GDK_SUCCEED ||
- BUNappend(bv, oidtostr(b->tseqbase), FALSE) != GDK_SUCCEED ||
+ BUNappend(bv, oidtostr(b->tseqbase, bf, (int) sizeof(bf)), FALSE)
!= GDK_SUCCEED ||
BUNappend(bk, "tsorted", FALSE) != GDK_SUCCEED ||
BUNappend(bv, local_itoa((ssize_t)BATtordered(b)), FALSE) !=
GDK_SUCCEED ||
BUNappend(bk, "trevsorted", FALSE) != GDK_SUCCEED ||
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list