| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
fix: configure runtime datasystem write mode Add a deploy-time default datasystem write mode setting and propagate it to libruntime agent session writes. Wire the setting through CLI, process deployment, and Helm values so redeployments can use write-back L2 cache when required. Signed-off-by: neatline <fuyipeng3@huawei.com> | 4 天前 | |
fix[runtime]: 修复 detached-actor 首次 invoke 永久挂起 driver 端 InvokeOrderManager 对"由其他 runtime 创建的命名/detached 实例" (经 RegisterInstanceAndUpdateOrder 注册,如 QueryInstanceMeta 获取命名实例) unfinishedSeqNo 从未被 NotifyInvokeSuccess 推进,保持初值 0。首调 Invoke 时 下发 invocationSequenceNo=1 但 minUnfinishedSequenceNo=0,远端 OrderedExecutionManager::Handle 因 invokeUnfinishedSeqNo(0) != seqNo(1) 将 请求挂入 waitingInvokeReqs,等待永远不到的 seqNo=0,函数体永不执行, yr.get(detached.add.invoke(2)) 永久阻塞直至超时/租约回收。 根因修复:在 RegisterInstanceAndUpdateOrder 非 restored 分支,orderingCounter++ 后将 unfinishedSeqNo 对齐到 orderingCounter。语义为"该实例由其他 runtime 创建,driver 视角下 0..orderingCounter-1 不存在/已结束,远端可直接从 orderingCounter 起执行",使首调的 minUnfinishedSequenceNo 与 invocationSequenceNo 同步,远端 while 条件立即满足。restored(snapstart) 路径不动,保留沙箱恢复语义。 放弃运行时侧"跳空洞"方案:远端无法区分"driver 没发更早请求"与"发了但 乱序未到",会破坏 HandleMisorderedRequestTest 的乱序重排并静默丢请求。 测试: - RegisterInstanceAndUpdateOrderTest 补 unfinishedSeqNo 对齐断言 - 新增 RegisterInstanceAndUpdateOrderAlignsUnfinishedSeqForDetachedFirstInvokeTest 复现 detached 首调:注册→Invoke(seqNo=1)→UpdateUnfinishedSeq 断言 invokeUnfinishedSeqNo == invokeSeqNo == 1 验证(compile 容器 bazel): - //test:invoke_order_manager_test 8/8 PASSED - //test:libruntime_test (ExecutionManagerTest+InvokeOrderManagerTest) PASSED Signed-off-by: For_YL <zhangtangwei@huawei.com> | 1 天前 | |
feat(sandbox): sync develop branch changes to feature/sandbox Synchronize incremental changes from develop into feature/sandbox, including websocket transport layer, sandbox reverse-tunnel, checkpoint lifecycle APIs, invoke-direct optimization, and related fixes. Key changes: - src/libruntime: add WebSocket transport (ws_transport.cpp/h), extend HTTP transport and client manager, add invoke-direct path - api/python: sandbox tunnel client/server, checkpoint CLI commands, invoke-direct support, config/runtime improvements - api/go: add ObjectRefDirect type for bypass-datasystem path - api/java: add RuntimeUtils seed-file helpers - deploy/process: config.sh additions (traefik, fc_agent_mgr, etc.), services.yaml python3.12 runtime entry - docs: sandbox-reverse-tunnel, websocket-transport, invoke-chain docs - test: ws_transport unit tests, invoke-direct smoke test, checkpoint lifecycle/query/actor e2e smoke tests - scripts: bump download URLs, add package utils helper Exclude aci.yaml (branch-specific CI configuration). Signed-off-by: Luo Rob <robbluo@gmail.com> Signed-off-by: Lwy_Robb <luowenyu4@huawei.com> | 1 个月前 | |
chore: consolidate sandbox post-merge fixes Preserve the original sandbox merge history while folding the follow-up CI, codecheck, packaging, deploy, and conflict-resolution commits into one merge commit. The tree is identical to the previous MR head 25a7b4e1fd7ea62d90e2e310a9b7414e4fb2d8a4. Signed-off-by: mhsong2 <songminhui2@huawei.com> | 1 个月前 | |
fix(runtime): start metrics processors Signed-off-by: mhsong2 <songminhui2@huawei.com> | 6 天前 |