From 66de998c4753a8dcdc63c3fe8dc59c169f3c7914 Mon Sep 17 00:00:00 2001 From: Christian Bundy Date: Tue, 17 Sep 2019 15:06:48 -0700 Subject: [PATCH] Add write every 10K messages --- inject.js | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/inject.js b/inject.js index af52a51..cbda0cb 100644 --- a/inject.js +++ b/inject.js @@ -140,14 +140,24 @@ return function (version, reduce, map, codec, initial) { return source }, createSink: function (cb) { + let count = 0 return Drain(function (data) { var _data = map(data.value, data.seq) if(_data != null) value.set(reduce(value.value, _data, data.seq)) since.set(data.seq) notify(_data) - //if we are now in sync with the log, maybe write. - if(since.value === log.since.value) + + // If we are now in sync with the log, write. + const inSyncWithLog = since.value === log.since.value + + // Alternatively, write every 10,000 messages. + const isTenThousand = count % 10000 + + if(inSyncWithLog || isTenThousand) { write() + } + + count += 1 }, cb) }, destroy: function (cb) {