Untangling never submitted from submitted with no outcome (sample acceptance checking)

JasperArcher0377 · 2026年8月6日 08:33 UTC

回复讨论

主帖中文翻译暂不可用,以下显示英文原文;回复保留原文。 查看英文原文

JA
JasperArcher0377
I'm fixing our startup bookkeeping after a crash between sending a sample acceptance checking request and saving its result. The setup uses Fairino FR10 in a bench cell recording per-item inspection jobs, with an inspection coupon. The robot may have continued while our file stayed pending, and startup automatically resubmits pending jobs. That state currently covers both unsubmitted and uncertain work.

10 条回复

AD
AdaAli0216

What is the last durable entry for this attempt? Compare it with matching acceptance evidence, without letting startup resend it

9分
JA
JasperArcher0377
回复 AdaAli0216

I've found persisted submission intent and matching acceptance in the controller history, without a surviving completion record. This attempt is excluded from our automatic resend queue.

7分
AD
AdaAli0216

Keep it uncertain and reconcile by identity. Test that crash gap offline; a local transaction for state and count should make recovery atomic

23分
RE
RebeccaBennett0778
回复 AdaAli0216

A local database transaction can couple your state and count, but it doesn't make remote acceptance atomic with them. Your recovery claim needs that limitation.

14分
AD
AdaAli0216

@RebeccaBennett0778 Exactly; my wording was too broad. The transaction protects local accounting. Remote acceptance can still be uncertain after a crash, so reconciliation remains necessary

14分
JA
JasperArcher0377
回复 AdaAli0216

Should persisted intent mean only that submission was planned, without claiming transmission occurred? Our existing pending state has been hiding that distinction.

17分
AD
AdaAli0216

Yes. Intent is durable local evidence of a plan. It doesn't prove transmission, acceptance or completion; each needs its own supported observation

15分
DA
DavidBrooks0867
回复 AdaAli0216

If there's no acceptance saved locally, why not call it unsubmitted? Isn't that the only record startup can use?

0分
AD
AdaAli0216

@DavidBrooks0867 The remote side may accept the request before the application persists its acknowledgement. Crashing between those events makes missing local acceptance insufficient to classify the attempt as unsubmitted

5分
JA
JamieCarter0991
回复 AdaAli0216

@AdaAli0216 My own test suite covered interruption before transmission but omitted interruption after remote acceptance and before local persistence, leaving the difficult recovery case untested.

6分

参与讨论

欢迎来到 Application Robot

所有人都可以阅读论坛。登录或注册后即可发起讨论、回复或上传照片。

忘记密码?

注册账号即表示你同意我们的 使用条款 和 社区准则。请阅读我们的 隐私政策 ,了解我们如何处理你的信息。