From 6e8daf980d8fadb0a682b19f802b3d56a5b4b23a Mon Sep 17 00:00:00 2001 From: td-zhangshun Date: Wed, 23 Apr 2025 19:28:02 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20plp=20=E8=BE=93=E5=87=BA=E5=B1=95?= =?UTF-8?q?=E7=A4=BA=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cmd/client/main.go | 2 +- cmd/server/main.go | 5 +++-- internal/testcase/power_loss-test.go | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/cmd/client/main.go b/cmd/client/main.go index d06f26e..cf2498b 100644 --- a/cmd/client/main.go +++ b/cmd/client/main.go @@ -196,7 +196,7 @@ func (c *Client) MonitorTestStatus(testID string) error { return case "integrity": if info, ok := update.Data.(map[string]interface{}); ok { - c.logger.Infof("数据完整性: 可用块: %.0f, 损坏块: %.0f, 丢失块: %.0f, 数据丢失: %.2f MB", + c.logger.Infof("数据完整性: 可用块: %.0f, 损坏块: %.0f, 没写入块: %.0f, 数据丢失: %.2f MB", info["available_blocks"], info["corrupted_blocks"], info["missing_blocks"], info["data_loss_mb"]) } } diff --git a/cmd/server/main.go b/cmd/server/main.go index 1a3a6bc..71e57a7 100644 --- a/cmd/server/main.go +++ b/cmd/server/main.go @@ -487,11 +487,12 @@ func StartServer(cfg *config.Config, runner *TestRunner, logger *logrus.Logger) // 保存完整性信息 runner.SaveIntegrityInfo(testID, integrityInfo) - // 发送完整性信息 + // 发送完整性信息 && BlocksMap 清理掉 + integrityInfo.BlocksMap = nil runner.sendIntegrityUpdate(testID, "数据完整性检查完成", integrityInfo) - logger.Infof("恢复测试完成: 丢失数据: %.2f MB", integrityInfo.DataLossMB) + logger.Infof("恢复测试完成: 没填充的数据: %.2f MB", integrityInfo.DataLossMB) } else { logger.Error("不是断电测试实例,无法执行数据完整性检查") runner.sendErrorUpdate(testID, "不是断电测试实例,无法执行数据完整性检查") diff --git a/internal/testcase/power_loss-test.go b/internal/testcase/power_loss-test.go index 0a50246..cb160c9 100644 --- a/internal/testcase/power_loss-test.go +++ b/internal/testcase/power_loss-test.go @@ -403,7 +403,7 @@ func (t *PowerLossTest) CheckIntegrity() *model.IntegrityInfo { t.integrityInfo.DataLossMB = utils.BytesToMB((t.integrityInfo.MissingBlocks + t.integrityInfo.CorruptedBlocks) * t.blockSize) t.integrityInfo.RecoverySuccess = t.integrityInfo.CorruptedBlocks == 0 && t.integrityInfo.MissingBlocks == 0 - t.setMessage(fmt.Sprintf("数据完整性检查完成: %d 个块正常, %d 个块丢失, %d 个块损坏", + t.setMessage(fmt.Sprintf("数据完整性检查完成: %d 个块正常, %d 个块没写入, %d 个块损坏", t.integrityInfo.AvailableBlocks, t.integrityInfo.MissingBlocks, t.integrityInfo.CorruptedBlocks)) return t.integrityInfo