mirror of
https://github.com/yu-i-i/overleaf-cep.git
synced 2026-11-14 22:23:42 +01:00
Merge pull request #3120 from overleaf/jpa-batched-update-continue
[scripts] batchedUpdate: add support for passing in the tail of the log GitOrigin-RevId: 50b573ec4f90026c3c2c660a5313fdd62817dbd9
This commit is contained in:
@@ -1,8 +1,12 @@
|
||||
const { promisify } = require('util')
|
||||
const { ReadPreference } = require('mongodb')
|
||||
const { ReadPreference, ObjectId } = require('mongodb')
|
||||
const { getNativeDb } = require('../../app/src/infrastructure/Mongoose')
|
||||
|
||||
const BATCH_SIZE = parseInt(process.env.BATCH_SIZE, 10) || 1000
|
||||
let BATCH_LAST_ID
|
||||
if (process.env.BATCH_LAST_ID) {
|
||||
BATCH_LAST_ID = ObjectId(process.env.BATCH_LAST_ID)
|
||||
}
|
||||
|
||||
async function getNextBatch(collection, query, maxId) {
|
||||
if (maxId) {
|
||||
@@ -33,7 +37,7 @@ async function batchedUpdate(collectionName, query, update) {
|
||||
|
||||
let nextBatch
|
||||
let updated = 0
|
||||
let maxId
|
||||
let maxId = BATCH_LAST_ID
|
||||
while ((nextBatch = await getNextBatch(collection, query, maxId)).length) {
|
||||
maxId = nextBatch[nextBatch.length - 1]
|
||||
updated += nextBatch.length
|
||||
|
||||
Reference in New Issue
Block a user