You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Reload process to use DB-assigned updated_at timestamps
When a process is saved, Sequel's timestamps plugin sets updated_at
in-memory before the DB transaction commits. If the runner is called
after the transaction commits (via after_commit callback), it receives
a stale in-memory timestamp that may differ from the DB-assigned value.
ProcessesSync compares process.updated_at against the LRP annotation
to detect drift. A stale timestamp causes unnecessary re-sync requests.
This commit adds process.reload before passing the process to runners
in ProcessObserver, ProcessRouteHandler, and AppUpdate. This ensures
the runner receives the DB-assigned timestamp.
Also removes an incorrect comment in ProcessRestart about timestamp
precision differences - testing confirmed the timestamps match when
the runner is called inside the transaction.
Adds skip_process_observer_on_update in AppUpdate to prevent redundant
ProcessObserver.updated calls when metric tags are being updated.
0 commit comments