agent-substrate / agent-substrate/substrate

Counter demo: in-memory state not preserved across suspend/resume (gVisor, kind), despite `onPause: Full`

未关闭
#519 8 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
area/demos area/storage kind/bug
主要语言
Go
星标
1.8k
派生
316
平均合并
2 天 43 分钟
30 天内合并 PR
287

描述

Environment: kind v0.30.0 (k8s v1.36.1) on WSL2/Ubuntu 24.04, substrate@main, deployed via `hack/create-kind-cluster.sh` + `hack/install-ate-kind.sh`.

Repro: deploy counter demo, create atespace + actor, POST 3x (memory count 3, file count 3), `kubectl ate suspend`, POST again.

Expected: per the API docs, `SnapshotScopeFull` "captures process memory plus the entire filesystem delta", so the resumed actor should respond `preserved memory count: 4`.

Actual: memory count resets to 1 while the DurableDir file counter correctly continues to 4. Reproducible across cycles (3 -> suspend -> 1 twice; file counter 3 -> 4, 6 -> 7).

Logs: atelet shows the Checkpoint RPC succeed with `pages.img.zstd`/`pages_meta.img.zstd` uploaded, and the Restore RPC succeed (~800ms), with no warnings or errors. The memory snapshot is captured and uploaded, but appears not to be restored (or silently falls back to a fresh start).

Is memory restore expected to work on the kind/gVisor path, or is this a known limitation? Happy to collect further diagnostics.

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。