diff options
| author | Adam Soltys <[email protected]> | 2024-01-15 16:50:19 +0000 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2024-01-15 16:50:19 +0000 |
| commit | c0c672ecd893389d68e4e7d8a417ab3c2035e3ad (patch) | |
| tree | fc5a889d27b179f31d217c42df9f87d124dbc119 /lib/migrate.js | |
| parent | f67585458d8b115bfc6a3ac0dc8fd3c560ebc2c9 (diff) | |
| download | coinos-server-c0c672ecd893389d68e4e7d8a417ab3c2035e3ad.tar.gz coinos-server-c0c672ecd893389d68e4e7d8a417ab3c2035e3ad.zip | |
migrate lock
Diffstat (limited to 'lib/migrate.js')
| -rw-r--r-- | lib/migrate.js | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/migrate.js b/lib/migrate.js index ef15c738..ecadbfc2 100644 --- a/lib/migrate.js +++ b/lib/migrate.js @@ -3,7 +3,11 @@ import { types } from "$lib/payments"; import { archive, db, g, ga, s } from "$lib/db"; let q = {}; +let inProgress = {}; async function migrate(id) { + delete q[id]; + if (inProgress[id]) return; + inProgress[id] = true; if (id) id = id.replace(/\s/g, "").toLowerCase(); let user = await g(`user:${id}`); if (typeof user === "string") user = await g(`user:${user}`); @@ -96,10 +100,10 @@ async function migrate(id) { warn("failed to migrate", username, e.message, line()); } - delete q[id]; - return user; } + + delete inProgress[id]; } let keepMigrating = async () => { |
