HomePhorge

Avoid Timeline race condition

Description

Avoid Timeline race condition

Summary: While I should fix the transactional stuff, that patch is going to be
tricky and transactions have some performance implications. This is a simple
fix which prevents the race.

Instead of having the data point at the event ID, have the event point at a
data ID. Insert the data first, then insert the event with the right data
pointer. This is super simple and prevents the race issue.

Test Plan:

  • Ran the schema upgrade script, verified that the database was correctly upgraded. Was also prompted to stop daemons.
  • Ran 'repository-launch-master', verified that the discovery daemons were able to discover new commits and insert events for them. Verified the committask daemon was consuming events and converting them into tasks.
  • Verified new tasks looked correct in the database.
  • Browsed web interface.

Reviewers: jungejason

CC: tuomaspelkonen

Differential Revision: 133

Details

Provenance
epriestleyAuthored on Apr 14 2011, 9:41 AM
themackabuPushed on Mar 25 2025, 8:07 PM
Parents
rPf7fe75f756dc: Image macros for Phabricator!
Branches
Unknown
Tags
Unknown

Event Timeline