| Commit message (Collapse) | Author | Age |
| |
|
| |
|
|
|
|
|
| |
Generalized LocationLog to PresenceLog, and use a presence log to record
urls for the web special remote.
|
|
|
|
| |
It was always imported qualified as Git anyway
|
|
|
|
|
|
| |
Since the logs have just been moved into the git-annex branch, don't need
to worry about backwards compatability with old versions of git-annex that
would fail to parse location logs with extra fields tacked on.
|
|
|
|
|
|
| |
That sucking sound is a whole page of code vanishing to be replaced with
return . catMaybes . map (logFileKey . takeFileName) =<< Branch.files
What can I say, git is my database, and haskell my copilot.
|
| |
|
| |
|
|
|
|
| |
It will need to run in Annex so it can use Branch
|
| |
|
| |
|
|
|
|
|
| |
This avoids leaking fds when an operation needs to read a lot of log files,
as unused will.
|
| |
|
|
|
|
|
|
| |
to avoid some issues with git on OSX with the mixed-case directories. No
migration is needed; the old mixed case hash directories are still read;
new information is written to the new directories.
|
|
|
|
|
| |
This can occur if a local remote repo has not been initted, so has no uuid
yet.
|
| |
|
|
|
|
|
|
| |
This means there can be 1024 subdirs, each with up to 1024 sub-subdirs.
So with hundreds of millions of annexed objects, each leaf directory will
have only a few files on average.
|
| |
|
| |
|
|
|
|
| |
currently failing for move --to
|
| |
|
| |
|
|
|
|
| |
Remotes.hs next, and also Backend/* and Command/*
|
| |
|
| |
|
|
|
|
|
|
|
| |
Writing to a tmp file means no locking is needed, and it fixes a bug
introduced by the last commit, which made log files be read lazily, so
they could still be open when written, which breaks due to haskell's
internal locking.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Actions that need to read all the location logs, like "git annex get .",
were still using a lot of memory, and profiling pointed at the location log
reading as the problem. Not locking them for read, and thus avoiding the
strict reading fixes the problem, although I don't quite understand why.
(Oddly, -sstderr profiling did not show the memory as used, though top
showed dozens of MB being used.)
Anyway, it's fine to not lock location logs for read, since the log format
and parser should be safe if a partial read of a file being written happens.
Note that that could easily happen anyway, if doing a git pull, etc,
especially if git needs to union merge in changes from elsewhere. The worst
that will happen is git-annex could get a bad or out of date idea about
locations and refuse to eg, --drop something.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Idea is the user will commit when ready, just stage everything.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
The latter has shady rounding. The new module is a bit harder to use, but
worth it, it adds subsecond timestamps too.
|
| |
|
| |
|
| |
|
| |
|
| |
|