From 3dfc368af0eca2bec8f7317f5cbc970390f5446f Mon Sep 17 00:00:00 2001 From: Keith Bostic Date: Tue, 29 Mar 2016 07:58:31 -0400 Subject: WT-2517: wtperf uses setvbuf in a way that isn't supported on Windows MSVC doesn't support a buffer size of 0 to setvbuf. The MSVC documentation says "Buffer size in bytes. Allowable range: 2 <= size <= INT_MAX (2147483647). Internally, the value supplied for size is rounded down to the nearest multiple of 2." --- bench/wtperf/wtperf.c | 2 +- src/btree/bt_debug.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bench/wtperf/wtperf.c b/bench/wtperf/wtperf.c index 340c400ba7e..8d3c68e71fd 100644 --- a/bench/wtperf/wtperf.c +++ b/bench/wtperf/wtperf.c @@ -1233,7 +1233,7 @@ monitor(void *arg) goto err; } /* Set line buffering for monitor file. */ - (void)setvbuf(fp, NULL, _IOLBF, 0); + (void)setvbuf(fp, NULL, _IOLBF, 1024); fprintf(fp, "#time," "totalsec," diff --git a/src/btree/bt_debug.c b/src/btree/bt_debug.c index 7c7f8cab855..2abe6ee9205 100644 --- a/src/btree/bt_debug.c +++ b/src/btree/bt_debug.c @@ -100,7 +100,7 @@ __debug_config(WT_SESSION_IMPL *session, WT_DBG *ds, const char *ofile) /* If we're using a file, flush on each line. */ WT_RET(__wt_fopen(session, ofile, WT_FHANDLE_WRITE, 0, &ds->fp)); - (void)setvbuf(ds->fp, NULL, _IOLBF, 0); + (void)setvbuf(ds->fp, NULL, _IOLBF, 1024); return (0); } -- cgit v1.2.1 From 49e31a32c84d071e919b0514206bc76bad3885b0 Mon Sep 17 00:00:00 2001 From: Keith Bostic Date: Tue, 29 Mar 2016 07:59:34 -0400 Subject: WT-2517: wtperf uses setvbuf in a way that isn't supported on Windows Increase the line-buffer size for the monitor and stdout streams from 32B to 1024B; I don't understand why a 32B buffer would ever be useful. --- bench/wtperf/misc.c | 2 +- bench/wtperf/wtperf.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bench/wtperf/misc.c b/bench/wtperf/misc.c index bdfd53d5295..98920f6ab64 100644 --- a/bench/wtperf/misc.c +++ b/bench/wtperf/misc.c @@ -54,7 +54,7 @@ setup_log_file(CONFIG *cfg) return (ret); /* Use line buffering for the log file. */ - (void)setvbuf(cfg->logf, NULL, _IOLBF, 32); + (void)setvbuf(cfg->logf, NULL, _IOLBF, 1024); return (0); } diff --git a/bench/wtperf/wtperf.c b/bench/wtperf/wtperf.c index 8d3c68e71fd..2c0dee71096 100644 --- a/bench/wtperf/wtperf.c +++ b/bench/wtperf/wtperf.c @@ -2313,7 +2313,7 @@ main(int argc, char *argv[]) cfg->table_name); /* Make stdout line buffered, so verbose output appears quickly. */ - (void)setvbuf(stdout, NULL, _IOLBF, 32); + (void)setvbuf(stdout, NULL, _IOLBF, 1024); /* Concatenate non-default configuration strings. */ if (cfg->verbose > 1 || user_cconfig != NULL || -- cgit v1.2.1