Hello,
I have a long running workflow, that accepts updates during its lifespan. If there are no updates for 24 hours, it completes after cleaning up some resources.
Everything has been working fine, I ran several successful workflows for weeks now.
However, today when I checked a workflow, I observed that it was still “In progress” beyond the 24 hour TTL window, and there were no update requests.
I did reset it, and I observed the error message:
BadUpdateWorkflowExecutionMessage: ProtocolMessageCommand referenced absent message ID ab45ca15-91ad-4a0f-b965-4dde220f247d/request/accept
I looked back in the event history, and there is indeed one successfully completed update with this message ID.
This is the JSON of the fail event:
{
"eventId": "59",
"eventTime": "2025-09-25T13:12:18.739544055Z",
"eventType": "WorkflowTaskFailed",
"taskId": "260071077",
"workflowTaskFailedEventAttributes": {
"scheduledEventId": "57",
"startedEventId": "58",
"cause": "WORKFLOW_TASK_FAILED_CAUSE_BAD_UPDATE_WORKFLOW_EXECUTION_MESSAGE",
"failure": {
"message": "BadUpdateWorkflowExecutionMessage: ProtocolMessageCommand referenced absent message ID ab45ca15-91ad-4a0f-b965-4dde220f247d/request/accept",
"serverFailureInfo": {}
},
"identity": "-"
},
"links": []
}
and this is the JSON of the successful update event (that precedes the error by more than a day):
{
"eventId": "21",
"eventTime": "2025-09-23T14:44:09.077606244Z",
"eventType": "WorkflowExecutionUpdateAccepted",
"taskId": "259064694",
"workflowExecutionUpdateAcceptedEventAttributes": {
"protocolInstanceId": "ab45ca15-91ad-4a0f-b965-4dde220f247d",
"acceptedRequestMessageId": "ab45ca15-91ad-4a0f-b965-4dde220f247d/request",
"acceptedRequestSequencingEventId": "18",
"acceptedRequest": {
"meta": {
"updateId": "ab45ca15-91ad-4a0f-b965-4dde220f247d",
"identity": "-"
},
"input": {
"name": "update_function_name"
}
}
},
"links": []
}
Does this indicate that for some reason the update message was cleaned up from the Temporal database? That would be odd - 1 day is a very short retention period, and I’ve been running workflows that completed successfully after 25-26 hours.
I’m using the Python SDK, but this seems to be unrelated to it.