Fix concurrency issues in pkgdb: only allow 1 write transaction at the same time.

This implementation relies on a POSIX named semaphore, which is also
required by xbps-rindex(8).
This commit is contained in:
Juan RP
2014-02-23 08:23:14 +01:00
parent bc2bada045
commit 4d1cdcac0c
9 changed files with 115 additions and 16 deletions

4
NEWS
View File

@@ -1,5 +1,9 @@
xbps-0.33 (???):
* Only allow a single writer to the pkgdb to avoid concurrency issues
when performing multiple write transactions (install, update or remove).
The implementation relies on a POSIX named semaphore.
* Do not continue the transaction if downloading a binpkg/signature file
has failed for some reason, stop and return error immediately.