Project

General

Profile

Actions

action #34597

closed

Race condition causing problems with the worker cache

Added by szarate about 6 years ago. Updated over 5 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Regressions/Crashes
Target version:
-
Start date:
2018-05-11
Due date:
% Done:

0%

Estimated time:

Description

The Cache implemented in the worker has some racy conditions, the toggle_lock method can be a good starting point for it, but a deeper look at how SQLite is handling the locks and how the concurrency is being managed in the code is needed.

From irc:

foursixnine | coolo: nope it doesn't, but it's what's being used when a download is triggered. So the etag is sent to webui and all the magic of "Content has not channged" happens... however now looking at the code... I think that the racy sqlite hit, The image was being downloaded by other workers at the same time... so most likely both thought "Hey It's my turn"... and stepped on eachother's toes :(.
coolo | not according to the logs
coolo | only 3611 downloaded the iso
coolo | but the code is indeed racy

Files

worker-journal.log (11.5 KB) worker-journal.log szarate, 2018-04-09 16:13

Related issues 4 (0 open4 closed)

Related to openQA Project - action #26088: [tools] Worker's Cache database sporadically locksResolved2017-10-17

Actions
Related to openQA Project - action #35299: Potential corrupted file causing installation tests to failResolvedEDiGiacinto2018-04-20

Actions
Related to openQA Project - action #39980: Cache locks assets when worker dies in critical sectionResolvedEDiGiacinto2018-10-02

Actions
Related to openQA Tests - action #51743: [openqa] All LTP tests are failing on boot_ltp for openSUSE (o3) on [x86_64]Resolvedpvorel2019-05-21

Actions
Actions

Also available in: Atom PDF