diff --git a/index.js b/index.js index e02983d..11574f8 100644 --- a/index.js +++ b/index.js @@ -644,10 +644,14 @@ module.exports = function (log, indexesPath) { const index = newIndexes[indexName] if (doneIndexing) indexes[indexName] = index index.offset = offset - done(() => { - saveIndex(indexName, index, count) - }) } + + done(() => { + for (var indexName in newIndexes) { + const index = newIndexes[indexName] + saveIndex(indexName, index, count) + } + }) } const logstreamId = Math.ceil(Math.random() * 1000) @@ -1092,9 +1096,6 @@ module.exports = function (log, indexesPath) { // kick-start this chain with a dummy null value push.values([null]), - // ensure that the seq->offset index is synchronized with the log - push.asyncMap((_, next) => ensureSeqIndexSync(next)), - // load lazy indexes, if any push.asyncMap((_, next) => { const lazyIdxNames = detectLazyIndexesUsed(operation) @@ -1117,6 +1118,9 @@ module.exports = function (log, indexesPath) { createIndexes(opsMissingIdx, next) }), + // ensure that the seq->offset index is synchronized with the log + push.asyncMap((_, next) => ensureSeqIndexSync(next)), + // get bitset for the input operation, and cache it push.asyncMap((_, next) => { getBitsetForOperation(operation, (bitset, filters) => { diff --git a/package.json b/package.json index b48fd15..0da0ea3 100644 --- a/package.json +++ b/package.json @@ -57,8 +57,8 @@ "ssb-keys": "^8.1.0", "ssb-ref": "^2.14.3", "ssb-validate": "^4.1.1", + "tap-arc": "^0.3.4", "tap-bail": "^1.0.0", - "tap-arc": "^0.1.2", "tape": "^5.2.2" }, "scripts": {