• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

preaction / Minion-Backend-mysql / 123
97%

Build:
DEFAULT BRANCH: master
Ran 12 Apr 2021 10:13PM UTC
Jobs 1
Files 1
Run time 1s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

pending completion
123

push

travis-ci

preaction
fix deadlocks by removing assignment to id field

The old `UPDATE ...` query contained a useless assignment to the `id` field:
`job.id = @dequeued_job_id := job.id`. The goal was the side-effect of
setting the `@dequeued_job_id` variable that was used later to get the
job information. However, this requires obtaining an exclusive lock on
the index for the `id` field, which cannot be done when there is also
a shared lock (like the one in the dependent subquery for the job's
parents...)

MySQL has a construct for doing an "atomic" `SELECT` followed by
`UPDATE`: `SELECT ... FOR UPDATE`. This locks the returned rows with
exclusive locks so other queries can't read them while we then come back
and perform the update.

Thanks @srchulo for the help debugging this issue, and Grant Street
Group for additional debugging information.

Fixes #28

237 of 245 relevant lines covered (96.73%)

55.83 hits per line

Jobs
ID Job ID Ran Files Coverage
13 123.13 (COVERAGE=1) 12 Apr 2021 10:13PM UTC 0
96.73
Travis Job 123.13
Source Files on build 123
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #123
  • 54348b6c on github
  • Prev Build on master (#121)
  • Next Build on master (#124)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc