Skip to content
Snippets Groups Projects
  1. Dec 24, 2019
    • Todd Gamblin's avatar
      lock transactions: fix non-transactional writes · eb8fc4f3
      Todd Gamblin authored
      Lock transactions were actually writing *after* the lock was
      released. The code was looking at the result of `release_write()` before
      writing, then writing based on whether the lock was released.  This is
      pretty obviously wrong.
      
      - [x] Refactor `Lock` so that a release function can be passed to the
            `Lock` and called *only* when a lock is really released.
      
      - [x] Refactor `LockTransaction` classes to use the release function
        instead of checking the return value of `release_read()` / `release_write()`
      eb8fc4f3
    • Todd Gamblin's avatar
      performance: avoid repeated DB locking on view generation · 779ac9fe
      Todd Gamblin authored
      `ViewDescriptor.regenerate()` checks repeatedly whether packages are
      installed and also does a lot of DB queries.  Put a read transaction
      around the whole thing to avoid repeatedly locking and unlocking the DB.
      779ac9fe
  2. Dec 23, 2019
  3. Dec 22, 2019
  4. Dec 21, 2019
  5. Dec 20, 2019
  6. Dec 19, 2019
Loading