git-annex/Annex
Joey Hess 38a23928e9
temporarily remove cached keys database connection
The problem is that shutdown is not always called, particularly in the test
suite. So, a database connection would be opened, possibly some changes
queued, and then not shut down.

One way this can happen is when using Annex.eval or Annex.run with a new
state. A better fix might be to make both of them call Keys.shutdown
(and be sure to do it even if the annex action threw an error).

Complication: Sometimes they're run reusing an existing state, so shutting
down a database connection could cause problems for other users of that
same state. I think this would need a MVar holding the database handle,
so it could be emptied once shut down, and another user of the database
connection could then start up a new one if it got shut down. But, what if
2 threads were concurrently using the same database handle and one shut it
down while the other was writing to it? Urgh.

Might have to go that route eventually to get the database access to run
fast enough. For now, a quick fix to get the test suite happier, at the
expense of speed.
2015-12-16 14:05:26 -04:00
..
Branch update my email address and homepage url 2015-01-21 12:50:09 -04:00
Content move 2015-12-10 14:20:38 -04:00
LockPool add missing checkSaneLock wrapper for pidlocks 2015-11-16 15:35:41 -04:00
MetaData update my email address and homepage url 2015-01-21 12:50:09 -04:00
View update my email address and homepage url 2015-01-21 12:50:09 -04:00
Action.hs temporarily remove cached keys database connection 2015-12-16 14:05:26 -04:00
AutoMerge.hs support pointer files 2015-12-07 15:35:36 -04:00
BloomFilter.hs use bloom filter in second pass of sync --all --content 2015-06-16 18:50:13 -04:00
Branch.hs Avoid unncessary write to the location log when a file is unlocked and then added back with unchanged content. 2015-10-12 14:46:47 -04:00
BranchState.hs simplify and make more atomic 2015-04-10 15:16:17 -04:00
CatFile.hs refactor and improve pointer file handling code 2015-12-09 14:27:43 -04:00
CheckAttr.hs refactor 2015-04-10 17:53:58 -04:00
CheckIgnore.hs refactor 2015-04-10 17:53:58 -04:00
Concurrent.hs merge git command queue when joining with concurrent thread 2015-11-05 18:21:48 -04:00
Content.hs implemented upgrade of direct mode repo to v6 2015-12-15 16:00:26 -04:00
Difference.hs a few hlints 2015-04-11 00:10:34 -04:00
Direct.hs reorg 2015-12-15 15:34:28 -04:00
DirHashes.hs a few hlints 2015-04-11 00:10:34 -04:00
Drop.hs Changed drop ordering when using git annex sync --content or the assistant, to drop from remotes first and from the local repo last. This works better with the behavior changes to drop in many cases. 2015-10-14 12:33:02 -04:00
Environment.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
FileMatcher.hs avoid unnecessary reading of git-annex branch data when matching on annex.largefiles 2015-12-04 15:06:41 -04:00
Fixup.hs avoid using --literal-pathspecs with git older than 1.8.1 which added it 2015-04-06 13:46:11 -04:00
Hook.hs Added a post-update-annex hook, which is run after the git-annex branch is updated. Needed for git update-server-info. 2015-03-20 14:52:58 -04:00
Index.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Init.hs Use git-annex init --version=6 to get v6 for now 2015-12-15 17:17:13 -04:00
InodeSentinal.hs move 2015-12-10 14:20:38 -04:00
Journal.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Link.hs always format pointer file with a trailing newline 2015-12-10 16:06:58 -04:00
LockFile.hs convert from Utility.LockPool to Annex.LockPool everywhere 2015-11-12 18:13:37 -04:00
LockPool.hs pid locking configuration and abstraction layer for git-annex 2015-11-12 17:50:34 -04:00
MakeRepo.hs Use git-annex init --version=6 to get v6 for now 2015-12-15 17:17:13 -04:00
MetaData.hs a few hlints 2015-04-11 00:10:34 -04:00
Notification.hs a few hlints 2015-04-11 00:10:34 -04:00
NumCopies.hs also generate a drop safety proof for move --from remote 2015-10-09 16:16:03 -04:00
Path.hs Fix bug introduced in the last release that broke git-annex sync when git-annex was installed from the standalone tarball. 2015-03-27 12:55:18 -04:00
Perms.hs unused import 2015-10-08 14:59:34 -04:00
Queue.hs merge git command queue when joining with concurrent thread 2015-11-05 18:21:48 -04:00
Quvi.hs remove Params constructor from Utility.SafeCommand 2015-06-01 13:52:23 -04:00
ReplaceFile.hs fix temp filename 2015-12-06 16:54:01 -04:00
SpecialRemote.hs enableremote: List uuids and descriptions of remotes that can be enabled, and accept either the uuid or the description in leu if the name. 2015-10-26 14:55:40 -04:00
Ssh.hs convert from Utility.LockPool to Annex.LockPool everywhere 2015-11-12 18:13:37 -04:00
TaggedPush.hs Fix setting/setting/viewing metadata that contains unicode or other special characters, when in a non-unicode locale. 2015-08-11 18:40:59 -04:00
Transfer.hs add missing checkSaneLock wrapper for pidlocks 2015-11-16 15:35:41 -04:00
Url.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
UUID.hs Avoid displaying network transport warning when a ssh remote does not yet have an annex.uuid set. 2015-10-15 15:36:54 -04:00
VariantFile.hs update my email address and homepage url 2015-01-21 12:50:09 -04:00
Version.hs Use git-annex init --version=6 to get v6 for now 2015-12-15 17:17:13 -04:00
View.hs reorg 2015-12-15 15:34:28 -04:00
Wanted.hs import Data.Default in Common 2015-01-28 16:11:28 -04:00
WorkTree.hs reorg 2015-12-15 15:34:28 -04:00