65 lines
4.9 KiB
Plaintext
65 lines
4.9 KiB
Plaintext
性能优化验证记录
|
||
|
||
变更分支/字段:main;财务仪表盘重复聚合、财务明细分页 order_id 两阶段查询、rental_orders 待线下出款覆盖索引。
|
||
原始 dashboard.go SHA-256:ecc1df350998a45778f3cf607a25ed75d67deb23dd6b1d04ec6cef5e5131c752
|
||
|
||
四个验证产物:
|
||
/Users/yml/codes/hfb_sys/docs/MODIFIED_FILE
|
||
/Users/yml/codes/hfb_sys/docs/DIFF_FILE
|
||
/Users/yml/codes/hfb_sys/docs/VERIFICATION.txt
|
||
/Users/yml/codes/hfb_sys/docs/ROLLBACK.sh
|
||
|
||
BASELINE
|
||
命令:HFB_ADMIN_FINANCE_TEST_DSN='hfb:secret@tcp(127.0.0.1:13306)/hfb_finance_perf?charset=utf8mb4&parseTime=True&loc=Local' HFB_ADMIN_FINANCE_PROFILE_OUTPUT='/tmp/hfb-finance-dashboard-optimization/baseline.json' go test ./internal/modules/adminfinance -run '^TestProfileDashboardOnMySQL$' -count=1 -v
|
||
输入:50 万 rental_orders、50 万 order_checkouts、60 万 payment_orders、100 万 wallet_ledger,时间分布 70 天,查询 2026-08-29 至 2026-09-04。
|
||
字面输出/结果:dashboard duration=7.936473625s daily_items=7;PASS;退出状态 0。
|
||
|
||
MODIFIED
|
||
命令:HFB_ADMIN_FINANCE_TEST_DSN='hfb:secret@tcp(127.0.0.1:13306)/hfb_finance_perf?charset=utf8mb4&parseTime=True&loc=Local' HFB_ADMIN_FINANCE_PROFILE_OUTPUT='/tmp/hfb-finance-dashboard-optimization/modified.json' go test ./internal/modules/adminfinance -run '^TestProfileDashboardOnMySQL$' -count=1 -v
|
||
输入:与 BASELINE 相同数据库、相同 7 天区间。
|
||
字面输出/结果:dashboard duration=1.625048875s daily_items=7;PASS;退出状态 0;cmp -s baseline.json modified.json 的退出状态 0;SQL 数 31 -> 26。
|
||
|
||
ROLLBACK
|
||
命令:cp docs/MODIFIED_FILE /tmp/hfb-dashboard-rollback-copy.go && ./docs/ROLLBACK.sh /tmp/hfb-dashboard-rollback-copy.go && cmp /tmp/hfb-dashboard-rollback-copy.go /tmp/hfb-finance-dashboard-optimization/dashboard.go.original
|
||
输入:优化后的 MODIFIED_FILE 副本。
|
||
字面输出/结果:rollback_cmp_exit=0;退出状态 0;副本恢复为原始 dashboard.go;MODIFIED_FILE 保持优化后行为和内容。
|
||
|
||
TESTS
|
||
命令:go test ./...;go vet ./...
|
||
字面输出/结果:后端全量测试 PASS;go vet PASS;退出状态均为 0。
|
||
|
||
MIGRATION
|
||
命令:goose -dir migrations mysql 'hfb:secret@tcp(127.0.0.1:13306)/hfb_sys?parseTime=true' up;SHOW INDEX FROM rental_orders WHERE Key_name='idx_rental_orders_offline_pending_amount';goose -dir migrations mysql 'hfb:secret@tcp(127.0.0.1:13306)/hfb_sys?parseTime=true' down。
|
||
输入:本地 Docker MySQL 的 migration 62 数据库。
|
||
字面输出/结果:goose: successfully migrated database to version: 63;索引三列均出现;Down 输出 OK 000063_finance_pending_disbursement_index.sql;删除后恢复原状态;退出状态 0。
|
||
|
||
资金出款操作人筛选验证
|
||
|
||
变更分支/字段:main;adminfinance.DisbursementQuery.Operator/OperatorID、`operator`/`operator_id` 请求参数及资金出款筛选表单。
|
||
原始 `disbursement_list.go` SHA-256:478ffe515a3f452759e191e0b32f8bc22c1ac2f2dde520092cc6c5ee716f1e7c
|
||
|
||
四个验证产物:
|
||
/Users/yml/codes/hfb_sys/docs/MODIFIED_FILE
|
||
/Users/yml/codes/hfb_sys/docs/DIFF_FILE
|
||
/Users/yml/codes/hfb_sys/docs/VERIFICATION.txt
|
||
/Users/yml/codes/hfb_sys/docs/ROLLBACK.sh
|
||
|
||
BASELINE
|
||
命令:`go test ./internal/modules/adminfinance -run '^TestDisbursementListCombinesPlatformSettlementsAndWithdrawals$' -count=1 -v`
|
||
输入:HEAD 基线代码,SQLite 内存测试数据。
|
||
字面输出/结果:`=== RUN TestDisbursementListCombinesPlatformSettlementsAndWithdrawals`、`--- PASS: TestDisbursementListCombinesPlatformSettlementsAndWithdrawals (0.01s)`、`PASS`、`ok hfb_sys/backend/internal/modules/adminfinance 0.420s`;退出状态 0。
|
||
|
||
MODIFIED
|
||
命令:`go test ./internal/modules/adminfinance -run '^TestDisbursementListCombinesPlatformSettlementsAndWithdrawals$' -count=1 -v`
|
||
输入:增加操作人昵称筛选断言的修改代码,SQLite 内存测试数据。
|
||
字面输出/结果:`=== RUN TestDisbursementListCombinesPlatformSettlementsAndWithdrawals`、`--- PASS: TestDisbursementListCombinesPlatformSettlementsAndWithdrawals (0.01s)`、`PASS`、`ok hfb_sys/backend/internal/modules/adminfinance 0.200s`;退出状态 0;按操作人“财务甲”返回 7 条且全部匹配;支持 `operator_id` 精确匹配。
|
||
|
||
ROLLBACK
|
||
命令:`cp docs/MODIFIED_FILE /tmp/hfb-finance-disbursement-filter/rollback-copy.go && ./docs/ROLLBACK.sh /tmp/hfb-finance-disbursement-filter/rollback-copy.go && cmp /tmp/hfb-finance-disbursement-filter/rollback-copy.go /tmp/hfb-finance-disbursement-filter/disbursement_list.go.original`
|
||
输入:修改后的 `MODIFIED_FILE` 副本。
|
||
字面输出/结果:`rollback_cmp_exit=0`;退出状态 0;副本恢复为原始 `disbursement_list.go`,`MODIFIED_FILE` 保持修改后内容(SHA-256 `fac88ec3f2137c68f79a281f24aadb2ddf80922452219716112ae45bdc24d459`)。
|
||
|
||
TESTS
|
||
命令:`go test ./...`;`npm run typecheck`
|
||
字面输出/结果:后端全量测试 PASS;前端 vue-tsc 类型检查 PASS;退出状态均为 0。
|