From 7d22fe3d7d0de97bae2ceedd051a0c16a1cd90e3 Mon Sep 17 00:00:00 2001 From: xiaojunnuo Date: Thu, 23 Jul 2026 10:49:00 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E4=BC=98=E5=8C=96SqliteError:=20disk?= =?UTF-8?q?=20I/O=20error=E6=8A=A5=E9=94=99=E4=BF=AE=E5=A4=8D=E6=8F=90?= =?UTF-8?q?=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/libs/midway-flyway-js/src/flyway.ts | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/packages/libs/midway-flyway-js/src/flyway.ts b/packages/libs/midway-flyway-js/src/flyway.ts index 569d9e5c5..bab2897ee 100644 --- a/packages/libs/midway-flyway-js/src/flyway.ts +++ b/packages/libs/midway-flyway-js/src/flyway.ts @@ -93,19 +93,21 @@ export class Flyway { await queryRunner.commitTransaction(); } catch (err) { this.logger.error(err); + this.errorTip(err); await this.storeSqlExecLog(file.script, filepath, false, queryRunner); await queryRunner.rollbackTransaction(); - - if (err.code === "SQLITE_IOERR_WRITE") { - this.logger.warn("SQLite数据库写入失败,可能您的操作系统版本太低,请将「certd:latest」镜像改为「certd:slim」即可。(如需指定版本可以修改成「certd:[version]-slim」)", file.script); - } - throw err; } } this.logger.info("[ midfly ] end-------------"); } + private errorTip(err: any) { + if (err.code === "SQLITE_IOERR_WRITE") { + this.logger.warn("SQLite数据库写入失败,可能您的操作系统版本太低,请将「certd:latest」镜像改为「certd:slim」即可。(如需指定版本可以修改成「certd:[version]-slim」)"); + } + } + private async storeSqlExecLog(filename: string, filepath: string, success: boolean, queryRunner: QueryRunner) { const hash = await this.getFileHash(filepath); //先删除 @@ -265,6 +267,7 @@ export class Flyway { await queryRunner.query(sql); } catch (err: any) { this.logger.error("exec sql error : ", err.message, err); + this.errorTip(err); throw err; } }