Changeset: 02e45980d642 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=02e45980d642
Modified Files:
sql/backends/monet5/datacell/datacell.c
sql/backends/monet5/datacell/emitter.c
sql/backends/monet5/datacell/receptor.c
Branch: Jan2014
Log Message:
Get datacell to compile again
Still tests to be fixed before Jan14 SP-2
diffs (248 lines):
diff --git a/sql/backends/monet5/datacell/datacell.c
b/sql/backends/monet5/datacell/datacell.c
--- a/sql/backends/monet5/datacell/datacell.c
+++ b/sql/backends/monet5/datacell/datacell.c
@@ -89,12 +89,12 @@ DCprelude(Client cntxt, MalBlkPtr mb, Ma
MT_lock_init( &dcLock, "datacellLock");
#endif
addPipeDefinition(cntxt, "datacell_pipe",
-
"optimizer.inline();optimizer.remap();optimizer.datacell();optimizer.garbageCollector();"
-
"optimizer.evaluate();optimizer.costModel();optimizer.coercions();optimizer.emptySet();"
-
"optimizer.aliases();optimizer.mitosis();optimizer.mergetable();optimizer.deadcode();"
-
"optimizer.commonTerms();optimizer.groups();optimizer.joinPath();optimizer.reorder();"
-
"optimizer.deadcode();optimizer.reduce();optimizer.dataflow();optimizer.history();"
-
"optimizer.multiplex();optimizer.accumulators();optimizer.garbageCollector();");
+ "optimizer.inline();
optimizer.remap();optimizer.datacell();optimizer.costModel();"
+ "optimizer.coercions(); optimizer.evaluate(); optimizer.emptySet();
optimizer.aliases();"
+ "optimizer.pushselect(); optimizer.mitosis(); optimizer.mergetable();
optimizer.deadcode();"
+ "optimizer.commonTerms(); optimizer.joinPath(); optimizer.reorder();
optimizer.deadcode();"
+ "optimizer.reduce(); optimizer.matpack(); optimizer.dataflow();
optimizer.querylog();"
+ "optimizer.multiplex(); optimizer.garbageCollector();");
return MAL_SUCCEED;
}
diff --git a/sql/backends/monet5/datacell/emitter.c
b/sql/backends/monet5/datacell/emitter.c
--- a/sql/backends/monet5/datacell/emitter.c
+++ b/sql/backends/monet5/datacell/emitter.c
@@ -114,7 +114,7 @@ EMemitterStartInternal(int *ret, str *tb
throw(MAL, "emitter.new", "Group '%s' has no members", *tbl);
em->table.format = GDKzalloc(sizeof(Column) * (len + 1));
- em->table.format[0].c[0] = NULL;
+ em->table.format[0].c = NULL;
em->table.format[0].name = NULL;
em->table.format[0].sep = "[ ";
em->table.format[0].seplen = (int) strlen(em->table.format[0].sep);
@@ -126,23 +126,22 @@ EMemitterStartInternal(int *ret, str *tb
throw(MAL, "receptor.new", "Could not access
descriptor");
}
- em->table.format[j].c[0] = BATcopy(b, b->htype, b->ttype,
FALSE);
- em->table.format[j].ci[0] =
bat_iterator(em->table.format[j].c[0]);
+ em->table.format[j].c = BATcopy(b, b->htype, b->ttype, FALSE);
+ em->table.format[j].ci = bat_iterator(em->table.format[j].c);
em->table.format[j].name = baskets[idx].cols[i];
em->table.format[j].sep = ",";
em->table.format[j].seplen = (int)
strlen(em->table.format[j].sep);
- em->table.format[j].type =
GDKstrdup(ATOMname(em->table.format[j].c[0]->ttype));
- em->table.format[j].adt = em->table.format[j].c[0]->ttype;
+ em->table.format[j].type =
GDKstrdup(ATOMname(em->table.format[j].c->ttype));
+ em->table.format[j].adt = em->table.format[j].c->ttype;
em->table.format[j].nullstr = "";
- em->table.format[j].tostr = &TABLETadt_toStr;
- em->table.format[j].frstr = &TABLETadt_frStr;
+ em->table.format[j].tostr = (void*) &TABLETadt_toStr;
+ em->table.format[j].frstr = (void*) &TABLETadt_frStr;
em->table.format[j].extra = em->table.format + j;
em->table.format[j].len = 0;
em->table.format[j].nillen = 0;
em->table.format[j].data = NULL;
j++;
}
- GDKfree(em->table.format[j - 1].sep);
em->table.format[j - 1].sep = "\n";
em->table.format[j - 1].seplen = (int) strlen(em->table.format[j -
1].sep);
em->table.nr_attrs = j;
@@ -274,7 +273,6 @@ static void
EMbody(Emitter em)
{
BUN cnt;
- size_t j;
int k, ret;
BAT *b;
@@ -326,27 +324,27 @@ bodyRestart:
*/
BSKTlock(&em->lck, &em->name, &em->delay);
for (k = 0; k < baskets[em->bskt].colcount; k++) {
- if (em->table.format[k].c[0])
- BBPunfix(em->table.format[k].c[0]->batCacheid);
+ if (em->table.format[k].c)
+ BBPunfix(em->table.format[k].c->batCacheid);
b = baskets[em->bskt].primary[k];
- em->table.format[k].c[0] = BATcopy(b, b->htype,
b->ttype, TRUE);
- em->table.format[k].ci[0] = bat_iterator(b);
+ em->table.format[k].c = BATcopy(b, b->htype, b->ttype,
TRUE);
+ em->table.format[k].ci = bat_iterator(b);
BATclear(b, FALSE);
}
BSKTunlock(&em->lck, &em->name);
- if ((cnt = BATcount(em->table.format[0].c[0]))) {
+ if ((cnt = BATcount(em->table.format[0].c))) {
MTIMEcurrent_timestamp(&baskets[em->bskt].seen);
em->cycles++;
- cnt = BATcount(em->table.format[1].c[0]);
+ cnt = BATcount(em->table.format[1].c);
#ifdef _DEBUG_EMITTER_
mnstr_printf(EMout, "#Emit " BUNFMT " tuples \n", cnt);
#endif
em->table.nr = cnt;
(void) MTIMEcurrent_timestamp(&em->lastseen);
- ret = TABLEToutput_file(&em->table,
em->table.format[1].c[0], em->emitter);
- em->sent += (int) BATcount(em->table.format[1].c[0]);
+ ret = TABLEToutput_file(&em->table,
em->table.format[1].c, em->emitter);
+ em->sent += (int) BATcount(em->table.format[1].c);
#ifdef _DEBUG_EMITTER_
if (ret < 0)
mnstr_printf(EMout, "#Tuple emission failed\n");
@@ -491,7 +489,7 @@ EMtable(int *nameId, int *hostId, int *p
BATseqbase(status, 0);
for (; em; em = em->nxt)
- if ( em->table.format[1].c[0]){
+ if ( em->table.format[1].c){
BUNappend(name, em->name, FALSE);
BUNappend(host, em->host, FALSE);
BUNappend(port, &em->port, FALSE);
@@ -500,7 +498,7 @@ EMtable(int *nameId, int *hostId, int *p
BUNappend(status, statusname[em->status], FALSE);
BUNappend(seen, &em->lastseen, FALSE);
BUNappend(cycles, &em->cycles, FALSE);
- em->pending += (int) BATcount(em->table.format[1].c[0]);
+ em->pending += (int) BATcount(em->table.format[1].c);
BUNappend(pending, &em->pending, FALSE);
BUNappend(sent, &em->sent, FALSE);
}
diff --git a/sql/backends/monet5/datacell/receptor.c
b/sql/backends/monet5/datacell/receptor.c
--- a/sql/backends/monet5/datacell/receptor.c
+++ b/sql/backends/monet5/datacell/receptor.c
@@ -139,14 +139,14 @@ RCreceptorStartInternal(int *ret, str *t
throw(MAL, "receptor.new", "Could not access
descriptor");
}
BBPincref(b->batCacheid, TRUE);
- fmt[j].c[0] = b;
+ fmt[j].c = b;
fmt[j].name = baskets[idx].cols[i];
fmt[j].sep = ",";
fmt[j].seplen = 1;
fmt[j].type = GDKstrdup(ATOMname(b->ttype));
fmt[j].adt = (b)->ttype;
- fmt[j].tostr = &TABLETadt_toStr;
- fmt[j].frstr = &TABLETadt_frStr;
+ fmt[j].tostr = (void*) &TABLETadt_toStr;
+ fmt[j].frstr = (void*) &TABLETadt_frStr;
fmt[j].extra = fmt + j;
fmt[j].len = fmt[j].nillen =
ATOMlen(fmt[j].adt,
ATOMnilptr(fmt[j].adt));
@@ -345,7 +345,7 @@ insert_val(Column *fmt, char *s, char *e
/* string needs the quotes included */
s = find_quote(s, quote);
if (!s) {
- snprintf(buf, BUFSIZ, "quote '%c' expected but not
found in \"%s\" from line " BUNFMT "\n", quote, s, BATcount(fmt->c[0]));
+ snprintf(buf, BUFSIZ, "quote '%c' expected but not
found in \"%s\" from line " BUNFMT "\n", quote, s, BATcount(fmt->c));
*err = GDKstrdup(buf);
return -1;
}
@@ -360,7 +360,7 @@ insert_val(Column *fmt, char *s, char *e
strncasecmp(s, fmt->nullstr + 1, fmt->nillen) == 0 &&
quote == fmt->nullstr[fmt->nillen - 1])) {
adt = fmt->nildata;
- fmt->c[0]->T->nonil = 0;
+ fmt->c->T->nonil = 0;
} else
adt = fmt->frstr(fmt, fmt->adt, s, e, quote);
if (bak)
@@ -374,7 +374,7 @@ insert_val(Column *fmt, char *s, char *e
if ((s == e && fmt->nullstr[0] == 0) ||
(e > s && strcasecmp(s, fmt->nullstr) == 0)) {
adt = fmt->nildata;
- fmt->c[0]->T->nonil = 0;
+ fmt->c->T->nonil = 0;
} else
adt = fmt->frstr(fmt, fmt->adt, s, e, quote);
if (bak)
@@ -388,16 +388,16 @@ insert_val(Column *fmt, char *s, char *e
val = (s != e) ? GDKstrdup(s) : GDKstrdup("");
*e = bak;
- snprintf(buf, BUFSIZ, "value '%s' while parsing '%s' from line
" BUNFMT " field %d not inserted, expecting type %s\n", val, s,
BATcount(fmt->c[0]), c, fmt->type);
+ snprintf(buf, BUFSIZ, "value '%s' while parsing '%s' from line
" BUNFMT " field %d not inserted, expecting type %s\n", val, s,
BATcount(fmt->c), c, fmt->type);
*err = GDKstrdup(buf);
GDKfree(val);
return -1;
}
/* key may be NULL but that's not a problem, as long as we have void */
- bunfastins(fmt->c[0], key, adt);
+ bunfastins(fmt->c, key, adt);
return 0;
bunins_failed:
- snprintf(buf, BUFSIZ, "while parsing '%s' from line " BUNFMT " field %d
not inserted\n", s, BATcount(fmt->c[0]), c);
+ snprintf(buf, BUFSIZ, "while parsing '%s' from line " BUNFMT " field %d
not inserted\n", s, BATcount(fmt->c), c);
*err = GDKstrdup(buf);
return -1;
}
@@ -447,7 +447,7 @@ insert_line(Tablet *as, char *line, ptr
line++;
line = tablet_skip_string(line, quote);
if (!line) {
- snprintf(errmsg, BUFSIZ, "End of string (%c)
missing " "in %s at line " BUNFMT "\n", quote, s, BATcount(fmt->c[0]));
+ snprintf(errmsg, BUFSIZ, "End of string (%c)
missing " "in %s at line " BUNFMT "\n", quote, s, BATcount(fmt->c));
as->error = GDKstrdup(errmsg);
if (!as->tryall)
return -1;
@@ -488,7 +488,7 @@ insert_line(Tablet *as, char *line, ptr
BUNins(as->complaints, NULL, as->error, TRUE);
}
} else {
- snprintf(errmsg, BUFSIZ, "missing separator '%s' line "
BUNFMT " field " BUNFMT "\n", fmt->sep, BATcount(fmt->c[0]), i);
+ snprintf(errmsg, BUFSIZ, "missing separator '%s' line "
BUNFMT " field " BUNFMT "\n", fmt->sep, BATcount(fmt->c), i);
as->error = GDKstrdup(errmsg);
if (!as->tryall)
return -1;
@@ -567,7 +567,7 @@ bodyRestart:
mnstr_close(receptor);
for (j = 0; j < rc->table.nr_attrs; j++) {
GDKfree(rc->table.format[j].data);
- BBPdecref(rc->table.format[j].c[0]->batCacheid,
TRUE);
+ BBPdecref(rc->table.format[j].c->batCacheid,
TRUE);
/* above will be double freed with multiple
* streams/threads */
}
@@ -610,7 +610,7 @@ bodyRestart:
/* BATs may be replaced in the meantime */
BSKTlock(&rc->lck, &rc->name, &rc->delay);
for (i = 0; i < baskets[rc->bskt].colcount; i++)
- rc->table.format[i].c[0] =
baskets[rc->bskt].primary[i];
+ rc->table.format[i].c =
baskets[rc->bskt].primary[i];
BSKTunlock(&rc->lck, &rc->name);
cnt = 0;
@@ -946,7 +946,7 @@ RCtable(int *nameId, int *hostId, int *p
BATseqbase(status, 0);
for (; rc; rc = rc->nxt)
- if (rc->table.format[1].c[0]) {
+ if (rc->table.format[1].c) {
BUNappend(name, rc->name, FALSE);
BUNappend(host, rc->host, FALSE);
BUNappend(port, &rc->port, FALSE);
@@ -955,7 +955,7 @@ RCtable(int *nameId, int *hostId, int *p
BUNappend(status, statusname[rc->status], FALSE);
BUNappend(seen, &rc->lastseen, FALSE);
BUNappend(cycles, &rc->cycles, FALSE);
- rc->pending = (int) BATcount(rc->table.format[1].c[0]);
+ rc->pending = (int) BATcount(rc->table.format[1].c);
BUNappend(pending, &rc->pending, FALSE);
BUNappend(received, &rc->received, FALSE);
}
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list