Recently, we observed a couple of issues of delays between search attributes being updated and latest values being reflected when fetched, for both custom and default ones.
-
Scenario for Custom attributes: Calling
upsertSearchAttributes
on a certain attribute and then fetching its value. Actual value still being the one before it was last updated. -
Scenario for Default attributes: Fetching
ExecutionStatus
of a workflow that failed, was reset and isRunning
again - actual value stillFailed
.
we are on temporal version: 1.20.3 and this was observed in typescript sdk
Is there a better way to handle this? One solution we came up with was to assert values were actually updated and add timers until the updates were propagated, but it doesn’t seem a proper way and feels more of a workaround.
Any ideas?