Changeset: 480c70073a04 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=480c70073a04 Modified Files: sql/backends/monet5/datacell/emitter.mx Branch: default Log Message:
Protect against duplicate port use diffs (30 lines): diff --git a/sql/backends/monet5/datacell/emitter.mx b/sql/backends/monet5/datacell/emitter.mx --- a/sql/backends/monet5/datacell/emitter.mx +++ b/sql/backends/monet5/datacell/emitter.mx @@ -196,6 +196,9 @@ if (EMfind(*tbl)) throw(MAL, "emitter.new", "Duplicate emitter"); + for ( i = 1; i < bsktTop; i++) + if ( baskets[i].port == *port) + throw(MAL,"receptor.new","Port already in use"); idx = BSKTlocate(*tbl); if (idx == 0) /* should not happen */ @@ -228,6 +231,7 @@ em->table.format[0].seplen = (int)strlen(em->table.format[0].sep); em->status = EMSTOP; + baskets[idx].port = *port; for (j = 0, i = 0; i < baskets[idx].colcount; i++) { b = baskets[idx].primary[j]; if (b == NULL) { @@ -480,7 +484,7 @@ BSKTunlock(&em->lck, &em->name); if ((cnt = BATcount(em->table.format[0].c[0]))) { MTIMEcurrent_timestamp(&baskets[em->bskt].seen); - baskets[em->bskt].events = cnt; + baskets[em->bskt].events += cnt; baskets[em->bskt].grabs ++; if (em->status != EMLISTEN) break; _______________________________________________ Checkin-list mailing list Checkin-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/checkin-list