diff --git a/packages/hydrooj/package.json b/packages/hydrooj/package.json index f59dd468c..d8257997e 100644 --- a/packages/hydrooj/package.json +++ b/packages/hydrooj/package.json @@ -1,6 +1,6 @@ { "name": "hydrooj", - "version": "2.13.53", + "version": "2.13.54", "bin": "bin/hydrooj.js", "main": "dist/loader.js", "typings": "dist/loader.d.ts", diff --git a/packages/hydrooj/src/model/problem.ts b/packages/hydrooj/src/model/problem.ts index f40e59528..647d2b595 100644 --- a/packages/hydrooj/src/model/problem.ts +++ b/packages/hydrooj/src/model/problem.ts @@ -82,7 +82,6 @@ export async function add( tag: string[] = [], category: string[] = [], data: ProblemDataSource = null, hidden = false, ) { const pidCounter = await domain.inc(domainId, 'pidCounter', 1); - if (!pid) pid = pidCounter.toString(); return await document.add( domainId, content, owner, document.TYPE_PROBLEM, pidCounter, null, null, { diff --git a/packages/hydrooj/src/upgrade.ts b/packages/hydrooj/src/upgrade.ts index aeee7bf40..e745a0d69 100644 --- a/packages/hydrooj/src/upgrade.ts +++ b/packages/hydrooj/src/upgrade.ts @@ -1,6 +1,7 @@ /* eslint-disable no-await-in-loop */ import * as domain from './model/domain'; import * as document from './model/document'; +import { db } from './service/db'; type UpgradeScript = () => Promise; @@ -29,6 +30,9 @@ const scripts: UpgradeScript[] = [ if (bulk.length) await bulk.execute(); } }, + async function _2_3() { + await db.collection('document').updateMany({ pid: /^\d+$/i }, { $unset: { pid: '' } }); + }, ]; export = scripts;