After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 709115 - cleaning up tmpdir on transaction completion breaks concurrency
cleaning up tmpdir on transaction completion breaks concurrency
Status: RESOLVED FIXED
Product: ostree
Classification: Infrastructure
Component: general
unspecified
Other Linux
: Normal normal
: ---
Assigned To: OSTree maintainer(s)
OSTree maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2013-09-30 16:30 UTC by Colin Walters
Modified: 2013-10-02 22:18 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
repo: Only delete temp files older than a day (2.25 KB, patch)
2013-10-02 13:01 UTC, Colin Walters
committed Details | Review

Description Colin Walters 2013-09-30 16:30:49 UTC
gnome-continuous has multiple processes; the test processes just use ostree_repo_transaction_set_refspec(), but this will end up cleaning out the tmpdir, deleting any temporary files used by the commit process from the build.

We need a more intelligent way to clean up the tmpdir.  Cleaning out files older than a day is a traditional way to do it, but is still theoretically racy.

I think we need to have some way for multiple processes to dynamically synchronize.  Sqlite for example uses a mmapable file.
Comment 1 Colin Walters 2013-10-02 13:01:06 UTC
Created attachment 256259 [details] [review]
repo: Only delete temp files older than a day

This is somewhat lame, but to do better we need a reliable
multiprocess synchronization mechanism.
Comment 2 Colin Walters 2013-10-02 22:18:19 UTC
Attachment 256259 [details] pushed as f9379b0 - repo: Only delete temp files older than a day