Changeset: 4a323edd8514 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/4a323edd8514
Modified Files:
sql/backends/monet5/copy.c
Branch: default
Log Message:
small fix in the copy into concurrent loading, fixes reading 1 byte passed end.
diffs (30 lines):
diff --git a/sql/backends/monet5/copy.c b/sql/backends/monet5/copy.c
--- a/sql/backends/monet5/copy.c
+++ b/sql/backends/monet5/copy.c
@@ -100,7 +100,7 @@ bufferstream_read( bufferstream *bs, int
memcpy(bs->buf[cur] + 2, bs->buf[ocur]+p, bs->len[ocur] - p +
1);
bs->len[cur] = 2 + bs->len[ocur] - p;
if (ocur != cur)
- bs->len[ocur] = bs->pos[ocur];
+ bs->len[ocur] = p;
}
bs->pos[cur] = 2;
bs->jmp[cur] = 0;
@@ -312,7 +312,7 @@ find_end_of_lines1nn(struct scan_state *
*pos++ = 0;
newline_count++;
latest_pos = pos;
- if (newline_count == maxcount)
+ if (pos == end || newline_count == maxcount)
break;
}
}
@@ -586,7 +586,7 @@ COPYsplitlines(Client cntxt, MalBlkPtr m
if (!r->error && !r->done) {
state.start = r->bs->buf[p->wid];
state.pos = state.start + r->bs->pos[p->wid];
- state.end = state.start + r->bs->len[p->wid];
+ state.end = state.start + (r->bs->jmp[p->wid] ?
r->bs->jmp[p->wid] : r->bs->len[p->wid]);
BUN e = 0;
r->line_count[p->wid] = r->linecount;
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]