AskaEth
f6c47b0ae1
fix(memory): 清掉两处与实现相反的旧说法 + 并发哨兵改成窗口重叠(变异 8/8 红)
review P2 两条。
① 旧说法没删净(同类第 N 次:改了 A,同一主张还留在 B / C)。这次按「**这句主张的所有
落点**」重扫了一遍我这一片里含 Stop / Start / 重启 / 心跳已停 的注释,改掉两处与实现
正面打架的:
- applyTidyConfig 的注释还写着「调用方(ApplyPanelTuning)在 Stop 期间不能持 runMu」
「前提仍是心跳已停」—— 而同文件的文件头刚写过「调优路径上一个 Start/Stop 都没有」,
同一文件里两段话自相矛盾;
- 整理档那条并发哨兵的循环注释还写着「Stop 把 running 置为 false,忘了重启就会静默
停摆」,而该循环里根本没有 Stop/Start(改成「唤醒不是停表」,并把 Stop/Start 那版
明确标成旧版)。
顺带把文件头「所有读点都收进访问器」的说法改准:此外还有一处**同一把锁下**的相等比较
(ApplyPanelTuning 里的 s.cfg == next),它本身不需要访问器。
② 新哨兵是概率性守卫:固定 40 轮时撤回 DryRun 同步只红 4/8(写方那几十次覆写在微秒级
就跑完,读方还在慢端点里打转)⇒ 文档规定的 -count=1 会漏掉约一半回归。改成**两侧各自
跑满同一个 300ms 墙钟窗口**(写窗口与读窗口必然重叠,不靠快慢概率),读方两个活端点各
起两路;写方每轮换一个值(否则 ApplyPanelTuning 会被「配置没变」的早退挡掉,根本不写)。
实测:撤回 DryRun 同步红 **8/8**、撤回 ManualRun 同步红 **8/8**(各 8 次 -race -count=1);
干净 tip `-race -count=5` 全绿、三条哨兵一起 `-count=3` 全绿;该哨兵耗时 0.35s(原 0.18s)。
顺带把 clipJSON 用例注释里那句改准:40 字节处被切掉的是第 13 个汉字的**第三个字节**
(前两个字节被留下),而不是先前写的「第三个字节上」。
2026-10-13 22:50:38 +08:00
..
2026-10-04 12:30:16 +08:00
2026-10-04 12:30:16 +08:00
2026-10-06 21:48:49 +08:00
2026-10-06 21:48:49 +08:00
2026-10-04 14:21:41 +08:00
2026-10-06 21:48:49 +08:00
2026-10-05 14:15:55 +08:00
2026-10-05 14:15:55 +08:00
2026-10-05 13:29:53 +08:00
2026-10-05 10:37:56 +08:00
2026-10-05 10:37:56 +08:00
2026-10-04 13:42:37 +08:00
2026-10-13 19:38:56 +08:00
2026-10-13 19:38:56 +08:00
2026-10-05 14:01:52 +08:00
2026-10-05 14:38:37 +08:00
2026-10-05 14:38:37 +08:00
2026-10-06 09:03:53 +08:00
2026-10-03 22:28:25 +08:00
2026-10-13 19:38:56 +08:00
2026-10-13 19:38:56 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:28:25 +08:00
2026-10-06 09:03:44 +08:00
2026-10-03 22:28:25 +08:00
2026-10-06 09:03:44 +08:00
2026-10-05 13:54:56 +08:00
2026-10-06 09:03:32 +08:00
2026-10-06 08:04:12 +08:00
2026-10-05 10:37:56 +08:00
2026-10-04 14:00:25 +08:00
2026-10-05 16:19:32 +08:00
2026-10-05 15:38:53 +08:00
2026-10-06 08:16:03 +08:00
2026-10-06 21:16:21 +08:00
2026-10-06 21:16:21 +08:00
2026-10-06 08:16:03 +08:00
2026-10-03 22:28:25 +08:00
2026-10-04 12:43:04 +08:00
2026-10-04 12:43:04 +08:00
2026-10-04 12:43:04 +08:00
2026-10-04 12:43:04 +08:00
2026-10-04 18:11:43 +08:00
2026-10-04 13:06:54 +08:00
2026-10-04 18:11:43 +08:00
2026-10-04 22:16:26 +08:00
2026-10-05 14:38:37 +08:00
2026-10-06 14:12:27 +08:00
2026-10-06 14:12:27 +08:00
2026-10-07 09:49:57 +08:00
2026-10-07 11:07:00 +08:00
2026-10-07 11:07:00 +08:00
2026-10-07 11:07:00 +08:00
2026-10-06 08:04:12 +08:00
2026-10-06 08:04:12 +08:00
2026-10-06 22:39:35 +08:00
2026-10-07 11:07:00 +08:00
2026-10-07 11:07:00 +08:00
2026-10-06 22:39:35 +08:00
2026-10-06 08:04:12 +08:00
2026-10-06 08:04:12 +08:00
2026-10-13 22:33:07 +08:00
2026-10-13 22:50:38 +08:00
2026-10-13 21:59:18 +08:00
2026-10-13 21:59:18 +08:00
2026-10-04 10:46:51 +08:00
2026-10-04 13:07:52 +08:00
2026-10-06 14:12:23 +08:00
2026-10-06 14:12:23 +08:00
2026-10-04 14:21:41 +08:00
2026-10-06 18:46:58 +08:00
2026-10-03 22:28:25 +08:00
2026-10-04 14:21:41 +08:00
2026-10-04 12:30:16 +08:00
2026-10-13 19:38:56 +08:00
2026-10-03 22:28:25 +08:00
2026-10-04 19:44:53 +08:00
2026-10-04 19:44:53 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:28:25 +08:00
2026-10-13 19:38:56 +08:00
2026-10-04 18:57:58 +08:00
2026-10-13 19:38:56 +08:00
2026-10-04 21:33:11 +08:00
2026-10-04 21:33:11 +08:00
2026-10-04 21:33:11 +08:00
2026-10-03 22:28:25 +08:00
2026-10-04 13:07:52 +08:00
2026-10-03 22:28:25 +08:00
2026-10-04 12:07:51 +08:00
2026-10-04 13:07:52 +08:00
2026-10-03 22:28:25 +08:00
2026-10-04 14:21:41 +08:00
2026-10-03 22:28:25 +08:00
2026-10-13 19:38:56 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:28:25 +08:00
2026-10-05 10:37:56 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:28:25 +08:00
2026-10-06 07:58:42 +08:00
2026-10-06 21:16:20 +08:00
2026-10-05 11:36:18 +08:00
2026-10-04 17:59:28 +08:00
2026-10-04 19:46:36 +08:00
2026-10-04 14:37:37 +08:00
2026-10-05 09:18:50 +08:00
2026-10-06 09:03:55 +08:00
2026-10-05 22:06:54 +08:00
2026-10-04 19:46:36 +08:00
2026-10-04 17:07:20 +08:00
2026-10-05 11:36:18 +08:00
2026-10-04 14:37:37 +08:00
2026-10-03 22:28:25 +08:00
2026-10-06 08:16:03 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:28:25 +08:00
2026-10-04 17:42:16 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:28:25 +08:00
2026-10-04 21:50:08 +08:00
2026-10-04 21:50:08 +08:00
2026-10-06 15:59:14 +08:00
2026-10-06 09:03:55 +08:00
2026-10-06 09:03:55 +08:00
2026-10-05 10:56:39 +08:00
2026-10-06 14:12:27 +08:00
2026-10-06 14:12:27 +08:00
2026-10-03 22:07:56 +08:00
2026-10-04 14:13:27 +08:00
2026-10-06 14:12:27 +08:00
2026-10-06 14:12:27 +08:00
2026-10-04 14:21:52 +08:00
2026-10-04 14:21:52 +08:00
2026-10-06 14:12:27 +08:00
2026-10-06 14:12:27 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:07:56 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:28:25 +08:00
2026-10-04 13:58:03 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:28:25 +08:00
2026-10-04 13:58:03 +08:00
2026-10-04 13:58:03 +08:00
2026-10-04 13:58:03 +08:00
2026-10-04 13:58:03 +08:00
2026-10-05 11:36:18 +08:00
2026-10-03 22:28:25 +08:00
2026-10-06 21:16:20 +08:00
2026-10-05 16:02:36 +08:00
2026-10-05 16:02:36 +08:00
2026-10-05 16:02:36 +08:00
2026-10-06 21:16:20 +08:00
2026-10-05 14:38:37 +08:00
2026-10-04 16:27:35 +08:00
2026-10-05 09:18:50 +08:00
2026-10-13 21:59:18 +08:00
2026-10-05 22:06:54 +08:00
2026-10-03 22:28:25 +08:00
2026-10-04 17:42:16 +08:00
2026-10-04 21:50:08 +08:00
2026-10-05 11:36:18 +08:00
2026-10-05 09:18:50 +08:00
2026-10-05 09:38:11 +08:00
2026-10-05 09:38:11 +08:00
2026-10-05 09:53:08 +08:00
2026-10-03 22:28:25 +08:00
2026-10-05 12:21:24 +08:00
2026-10-05 10:56:39 +08:00
2026-10-05 12:21:24 +08:00
2026-10-05 09:18:50 +08:00
2026-10-05 09:53:08 +08:00
2026-10-05 10:56:39 +08:00
2026-10-05 12:21:24 +08:00
2026-10-04 17:59:28 +08:00
2026-10-05 09:18:50 +08:00
2026-10-05 09:46:10 +08:00
2026-10-03 22:28:25 +08:00
2026-10-06 07:58:42 +08:00
2026-10-04 17:59:28 +08:00
2026-10-05 09:38:11 +08:00
2026-10-05 09:38:11 +08:00
2026-10-05 11:36:18 +08:00
2026-10-04 17:25:35 +08:00
2026-10-05 11:36:18 +08:00
2026-10-05 09:18:50 +08:00
2026-10-05 09:46:10 +08:00
2026-10-07 10:07:13 +08:00
2026-10-05 10:56:39 +08:00
2026-10-05 10:56:39 +08:00
2026-10-05 10:56:39 +08:00
2026-10-05 09:18:50 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:10:33 +08:00
2026-10-05 10:56:39 +08:00
2026-10-04 17:59:28 +08:00
2026-10-05 09:38:11 +08:00
2026-10-06 21:48:48 +08:00
2026-10-06 09:03:53 +08:00
2026-10-06 09:03:53 +08:00
2026-10-06 09:03:53 +08:00
2026-10-03 22:07:56 +08:00
2026-10-03 22:10:33 +08:00
2026-10-04 17:59:28 +08:00
2026-10-03 22:07:56 +08:00
2026-10-03 22:28:25 +08:00
2026-10-03 22:07:56 +08:00
2026-10-05 09:38:11 +08:00
2026-10-06 09:03:53 +08:00
2026-10-05 10:56:39 +08:00
2026-10-05 10:56:39 +08:00
2026-10-04 17:59:28 +08:00
2026-10-04 11:26:35 +08:00
2026-10-07 09:34:45 +08:00