Skip to content
This repository was archived by the owner on Mar 13, 2025. It is now read-only.

Commit 06d1341

Browse files
committed
Recollect dumpDbToEs.js script
1 parent 7d751bf commit 06d1341

File tree

1 file changed

+10
-8
lines changed

1 file changed

+10
-8
lines changed

scripts/db/dumpDbToEs.js

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -391,14 +391,12 @@ async function main () {
391391

392392
for (let i = 0; i < keys.length; i++) {
393393
const key = keys[i]
394+
const queryPage = { perPage: parseInt(config.get('ES.MAX_BATCH_SIZE')), page: 1 }
394395
try {
395-
const allData = await dbHelper.find(models[key], {})
396-
let j = 0
397-
const dataset = _.chunk(allData, config.get('ES.MAX_BATCH_SIZE'))
398-
for (const data of dataset) {
396+
while (true) {
397+
const data = await dbHelper.find(models[key], { ...queryPage })
399398
for (let i = 0; i < data.length; i++) {
400-
j++
401-
logger.info(`Inserting data ${j} of ${allData.length}`)
399+
logger.info(`Inserting data ${i + 1} of ${data.length}`)
402400
logger.info(JSON.stringify(data[i]))
403401
if (!_.isString(data[i].created)) {
404402
data[i].created = new Date()
@@ -414,14 +412,18 @@ async function main () {
414412
}
415413
}
416414
await insertIntoES(key, data)
415+
logger.info('import data for ' + key + ' done')
416+
if (data.length < queryPage.perPage) {
417+
break
418+
} else {
419+
queryPage.page = queryPage.page + 1
420+
}
417421
}
418-
logger.info('import data for ' + key + ' done')
419422
} catch (e) {
420423
logger.error(e)
421424
logger.warn('import data for ' + key + ' failed')
422425
continue
423426
}
424-
425427
try {
426428
await createAndExecuteEnrichPolicy(key)
427429
logger.info('create and execute enrich policy for ' + key + ' done')

0 commit comments

Comments
 (0)