pbl_runtime_ext/tests/evidence/rtx0005_live_evidence.txt

63 lines
2.6 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

==============================================================================
PBL-RTX-0005 实库取证(修复后 DDL 装载 + 守卫行为)
时间: 2026-09-22 14:58:29 +0800
git HEAD: dfffebb 模块目录: /d/pipeline/workspaces/0/sdlc_general/modules/pbl_runtime_ext
==============================================================================
[1] 连接参数来源: projects/pbls/env/test.json db 段(dbname=pbls user=pbls,凭据不打印)
[2] mariadb-install-db rc=0
[3] mariadbd 就绪: 10.6.23-MariaDB-0ubuntu0.22.04.1
[4] 建库建号 rc=0
[5] full_script() 渲染 12346 bytes(修复后,无过程体 RETURN)
[6] DDL 装载 rc=0
stdout: note | m11b-1 migrate: 人工执行,见注释
stderr: (空) <-- 修复前此处为 ERROR 1064 (42000) at line 65
[7] SHOW PROCEDURE STATUS(过程真实存在)
[8] SHOW TRIGGERS(触发器真实存在)
TRIGGER_NAME EVENT_MANIPULATION ACTION_TIMING EVENT_OBJECT_TABLE
trg_pbl_runtime_event_append_only_del DELETE BEFORE pbl_runtime_event
trg_pbl_runtime_event_append_only_upd UPDATE BEFORE pbl_runtime_event
[9] 分区清单
PARTITION_NAME PARTITION_DESCRIPTION
p202609 '2026-10-01'
p202610 '2026-11-01'
p202611 '2026-12-01'
p202612 '2027-01-01'
p202701 '2027-02-01'
p202702 '2027-03-01'
pmax MAXVALUE
[10] CALL pbl_runtime_event_ensure_partitions(9)(修复前报 1305 does not exist)
rc=0 stderr=(空)
调用后分区数=11
[11] append-only 守卫:非 break-glass 会话 CALL pbl_assert_append_only 必须被拒(45001)
rc=1 stderr=--------------
CALL pbl_assert_append_only('pbl_runtime_event','update','probe-deny')
--------------
ERROR 45001 (45000) at line 1: PBL_APPEND_ONLY_DENIED
PASS: 拒绝生效(SQLSTATE 45000 / MYSQL_ERRNO 45001)
[12] break-glass 放行:SET @pbl_guard_ctx='append_only_admin' 后同一 CALL 不报错
rc=0 stderr=(空)
[13] 非守护表不受影响:CALL pbl_assert_append_only('other_table',...) 应放行
rc=0 stderr=(空)
[14] 触发器层:INSERT 允许 / UPDATE 拒绝 / DELETE 拒绝(同会话内逐条验证)
UPDATE 段 rc=1 stderr=--------------
UPDATE pbl_runtime_event SET event_type='x' WHERE tenant_id='t_rtx5'
--------------
ERROR 45001 (45000) at line 3: PBL_APPEND_ONLY_DENIED
DELETE 段 rc=1 stderr=--------------
DELETE FROM pbl_runtime_event WHERE tenant_id='t_rtx5'
--------------
ERROR 45001 (45000) at line 1: PBL_APPEND_ONLY_DENIED
PASS: INSERT 成功、UPDATE/DELETE 均被触发器拒绝
break-glass 清理探针 rc=0 stderr=(空)
[15] 取证结论: PASS
[16] 沙箱 datadir 已销毁: /tmp/rtx0005_evidence_db 存在=False
[17] 本取证正文已同步落盘: tests/evidence/rtx0005_live_evidence.txt