Commit graph

714 commits

Author SHA1 Message Date
http://joeyh.name/
eb266ace3c Added a comment 2014-02-06 17:26:59 +00:00
Joey Hess
5d7777cbe2 set up git email config in clone repos too when running test
This fixes the problem of the environment variables apparently not being
seen on Windows. I could probably remove the setting of the env vars from
Test.hs now as this covers it better.

Note that outside the test suite, git-annex on windows seems to manage to
configure the repo so commits work on its own.
2014-02-04 14:31:52 -04:00
Joey Hess
2287c88bfd update 2014-02-03 21:24:23 -04:00
Joey Hess
1c997fd08c fix test suite to pass on windows
On windows, the sync of the second cloned repo to origin failed, because
synced/master was a non-fast-forward. This may be a bug of its own, but
it's not the issue that this test was intended to test, so disconnect
the repos from origin before syncing.
2014-02-03 12:12:50 -04:00
Joey Hess
08afe3a1f6 fix failing test case on Windows
ensure file being modified is all read before it's opened for write
2014-02-03 10:20:18 -04:00
https://www.google.com/accounts/o8/id?id=AItOawkNE-H4vEcbcGndxq5daT8qUb7yIf7r1OE
c6ee7f143a openwrt packages. multiplle architectures 2014-02-02 22:35:55 +00:00
Joey Hess
089c0109a2 Added ways to configure rsync options to be used only when uploading or downloading from a remote. Useful to eg limit upload bandwidth. 2014-02-02 16:06:34 -04:00
Joey Hess
ee164ccbbb windows test suite down to only 2 failures 2014-01-30 15:57:41 -04:00
Joey Hess
721cc0cd22 rework annexed object locking in direct mode & support Windows
Seems that locking of annexed objects when they're being dropped was broken
in direct mode:

* When taking the lock before dropping, it created the .git/annex/objects
  file, as an empty file. It seems that the dropping code deleted that,
  but that is not right, and for all I know could in some situation cause
  a corrupted object to leak out.
* When the lock was checked, it actually tried to open each direct mode
  file, and checked if it was locked. Not the same lock used above, and
  could also fail if some consumer of the file locked it.

Fixed this, and added windows support by switching direct mode to lock a
.lck file.
2014-01-28 16:43:11 -04:00
Joey Hess
4d0223e962 Merge branch 'master' of ssh://git-annex.branchable.com 2014-01-26 15:08:10 -04:00
Joey Hess
a3f61ea75d close 2014-01-26 15:00:57 -04:00
https://www.google.com/accounts/o8/id?id=AItOawln3ckqKx0x_xDZMYwa9Q1bn4I06oWjkog
9f790028bd 2014-01-26 18:51:55 +00:00
Joey Hess
605fb7075b move to todo 2014-01-26 14:08:36 -04:00
Joey Hess
5fc2d760ea Optimise non-bare http remotes; no longer does a 404 to the wrong url every time before trying the right url. Needs annex-bare to be set to false, which is done when initially probing the uuid of a http remote. 2014-01-26 13:03:25 -04:00
Joey Hess
c0b6d9b343 close 2014-01-23 16:58:44 -04:00
Joey Hess
3da0064657 assistant unused file handling
Make sanity checker run git annex unused daily, and queue up transfers
of unused files to any remotes that will have them. The transfer retrying
code works for us here, so eg when a backup disk remote is plugged in,
any transfers to it are done. Once the unused files reach a remote,
they'll be removed locally as unwanted.

If the setup does not cause unused files to go to a remote, they'll pile
up, and the sanity checker detects this using some heuristics that are
pretty good -- 1000 unused files, or 10% of disk used by unused files,
or more disk wasted by unused files than is left free. Once it detects
this, it pops up an alert in the webapp, with a button to take action.

TODO: Webapp UI to configure this, and also the ability to launch an
immediate cleanup of all unused files.

This commit was sponsored by Simon Michael.
2014-01-22 22:53:18 -04:00
Joey Hess
4b55afe9e9 add "unused" preferred content expression
With a really nice optimisation that keeps it from having any overhead
in normal operation!

This commit was sponsored by Ulises Vitulli.
2014-01-22 16:35:32 -04:00
Joey Hess
02896ee15d preferred content stability analysis 2014-01-22 15:55:44 -04:00
Joey Hess
5f6ebfcd07 Merge branch 'master' of ssh://git-annex.branchable.com 2014-01-22 14:37:32 -04:00
Joey Hess
05ead99cc2 promote forum post to feature request; add design 2014-01-22 14:35:38 -04:00
http://olivier.mehani.name/
4207564827 Added a comment 2014-01-22 13:08:21 +00:00
Joey Hess
f2713a3bb9 benchmarked numcopies .gitattributes in preferred content
Checking .gitattributes adds a full minute to a git annex find looking for
files that don't have enough copies. 2:25 increasts to 3:27. I feel this is
too much of a slowdown to justify making it the default. So, exposed two
versions of the preferred content expression, a slow one and a fast but
approximate one.

I'm using the approximate one in the default preferred content expressions
to avoid slowing down the assistant.
2014-01-21 18:49:25 -04:00
Joey Hess
3159da2693 Add and use numcopiesneeded preferred content expression.
* Add numcopiesneeded preferred content expression.
* Client, transfer, incremental backup, and archive repositories
  now want to get content that does not yet have enough copies.

This means the asssistant will make copies of files that don't yet
meet the configured numcopies, even to places that would not normally want
the file.

For example, if numcopies is 4, and there are 2 client repos and
2 transfer repos, and 2 removable backup drives, the file will be sent
to both transfer repos in order to make 4 copies. Once a removable drive
get a copy of the file, it will be dropped from one transfer repo or the
other (but not both).

Another example, numcopies is 3 and there is a client that has a backup
removable drive and two small archive repos. Normally once one of the small
archives has a file, it will not be put into the other one. But, to satisfy
numcopies, the assistant will duplicate it into the other small archive
too, if the backup repo is not available to receive the file.

I notice that these examples are fairly unlikely setups .. the old behavior
was not too bad, but it's nice to finally have it really correct.

.. Almost. I have skipped checking the annex.numcopies .gitattributes
out of fear it will be too slow.

This commit was sponsored by Florian Schlegel.
2014-01-20 17:35:29 -04:00
Joey Hess
5ddbd24a1c stability analysis 2014-01-20 17:11:02 -04:00
Joey Hess
d66535f065 global numcopies setting
* numcopies: New command, sets global numcopies value that is seen by all
  clones of a repository.
* The annex.numcopies git config setting is deprecated. Once the numcopies
  command is used to set the global number of copies, any annex.numcopies
  git configs will be ignored.
* assistant: Make the prefs page set the global numcopies.

This global numcopies setting is needed to let preferred content
expressions operate on numcopies.

It's also convenient, because typically if you want git-annex to preserve N
copies of files in a repo, you want it to do that no matter which repo it's
running in. Making it global avoids needing to warn the user about gotchas
involving inconsistent annex.numcopies settings.
(See changes to doc/numcopies.mdwn.)

Added a new variety of git-annex branch log file, that holds only 1 value.
Will probably be useful for other stuff later.

This commit was sponsored by Nicolas Pouillard.
2014-01-20 16:47:56 -04:00
Joey Hess
e7f8c1911a design for preferred content numcopies check 2014-01-20 14:28:33 -04:00
Joey Hess
cfa6865056 wontfix 2014-01-20 12:36:19 -04:00
Joey Hess
7e6e018408 followups and closures 2014-01-19 17:56:24 -04:00
http://olivier.mehani.name/
9c23012b5a 2014-01-16 02:27:25 +00:00
http://olivier.mehani.name/
895f4584f3 Added a comment 2014-01-16 02:22:19 +00:00
Joey Hess
e10972905a wontfix 2014-01-15 13:20:03 -04:00
https://launchpad.net/~fbe
467651e653 2014-01-15 12:23:07 +00:00
http://olivier.mehani.name/
2f605d7d56 Added a comment 2014-01-15 02:26:31 +00:00
http://olivier.mehani.name/
2d3371f525 2014-01-15 00:48:28 +00:00
https://www.google.com/accounts/o8/id?id=AItOawkgy5Qf4bivpTfYPw_yh92OcDlesrVTREg
1ed7a4c144 Added a comment 2014-01-12 20:31:59 +00:00
https://www.google.com/accounts/o8/id?id=AItOawlzlNQbf6wBgv9j6-UqfpXcQyAYMF8S3t4
72bbafadb2 Added a comment 2014-01-12 09:19:32 +00:00
Joey Hess
8e15fae706 foo 2014-01-10 15:30:09 -04:00
namelessjon
7f7a8da320 Added a comment: inode starvation 2014-01-09 15:30:16 +00:00
Joey Hess
1dd4b17bdf update 2014-01-08 20:01:12 -04:00
https://www.google.com/accounts/o8/id?id=AItOawlgyVag95OnpvSzQofjyX0WjW__MOMKsl0
48bf3ec4f6 2014-01-08 22:50:43 +00:00
https://www.google.com/accounts/o8/id?id=AItOawnx8kHW66N3BqmkVpgtXDlYMvr8TJ5VvfY
711a78deb8 2014-01-08 06:45:01 +00:00
Joey Hess
71dea8d173 move wishlist item out out of bug list 2014-01-06 14:19:42 -04:00
http://joeyh.name/
b8e9a3e56d Added a comment 2014-01-04 19:18:16 +00:00
https://www.google.com/accounts/o8/id?id=AItOawkYmMFDdf3GJ9Oba6NCVkzGc4JyB9WavMs
5b10c51e00 2014-01-04 02:29:19 +00:00
https://www.google.com/accounts/o8/id?id=AItOawlKguAW2rkgcUqK2mmxlYnh4Jj578A4AIA
9f80431d33 2014-01-02 22:33:04 +00:00
https://www.google.com/accounts/o8/id?id=AItOawlKguAW2rkgcUqK2mmxlYnh4Jj578A4AIA
87fc579c2d 2014-01-02 22:30:48 +00:00
Joey Hess
07c5c4d8f3 Merge branch 'master' of ssh://git-annex.branchable.com 2014-01-02 13:27:08 -04:00
http://joeyh.name/
e0624c933e Added a comment 2014-01-02 17:25:50 +00:00
Joey Hess
2e963f7ba0 close 2014-01-02 13:23:58 -04:00
Richard Hartmann
952f60ed65 Add doc/todo/wishlist:_git_annex_info_UUID/comment_2._comment 2014-01-02 09:33:03 +01:00