zlacker

[parent] [thread] 2 comments
1. samus+(OP)[view] [source] 2023-09-24 23:01:32
I recently got introduced to this system at work, and also built a new job using it. It works fine, but since I had to implement work stealing to deal with abandoned jobs in a timely manner, I wouldn't dare to use it for actions that absolutely must not happen twice.
replies(1): >>A1kmm+eL
2. A1kmm+eL[view] [source] 2023-09-25 08:35:30
>>samus+(OP)
Exactly-once is only meaningfully possible if you have a rollback for tasks of unknown completion state - for example if the task involves manipulating the same database as the one controlling the task execution. Otherwise, it becomes the (impossible to solve) two-generals problem between updating the task status and performing the task.
replies(1): >>samus+721
◧◩
3. samus+721[view] [source] [discussion] 2023-09-25 11:13:37
>>A1kmm+eL
Full agree here.

There is actually another possibility: there must be a way to check whether the receiving system has received the message. But this only works if there are no "rogue" senders.

[go to top]