Commit Graph

902 Commits

Author SHA1 Message Date
Klaus Post 3804bc7493 Use bigger offset in test to avoid random test failures.
Since Windows cannot to a SIGHUP test to check if a process is live,
the test will fail because the lock isn't detected as stale if a process with
that ID exists. Process IDs are re-used agressively on Windows, so add 500000 makes
the test extremely unlikely (if not impossible) to fail.
2015-08-14 15:19:45 +02:00
Klaus Post 3504ea3992 Skip UID/GID and SIGHUP lock-check on Windows
On Windows, User ID/Group ID is not a number, so we ignore any parsing error
that may come from attempting to convert it to an integer. It will simply be '0'.

Don't defer the process Release until we have checked the error.

Skip the SIGHUP connection attempt on Windows. If the process exists, we assume it is running.
2015-08-14 15:13:11 +02:00
Klaus Post 5d5f3de62f Output EXE file on Windows platform. 2015-08-14 15:08:07 +02:00
Alexander Neumann dc842ffa09 Add a word about git commits 2015-08-12 20:38:43 +02:00
Alexander Neumann 17ee6b1c4b Merge pull request #251 from restic/fuse-ownership
fuse/mount: Use original UID/GID as owner
2015-07-27 21:39:45 +02:00
Alexander Neumann d5ce2da2aa fuse test: remove debug output 2015-07-26 20:57:03 +02:00
Alexander Neumann dde0fd8421 Add option to use root as owner of files/dirs 2015-07-26 20:56:27 +02:00
Alexander Neumann bdcb2175c5 fuse: show correct uid and gid 2015-07-26 20:02:17 +02:00
Alexander Neumann 05e2afba0b Merge pull request #249 from restic/reduce-fuse-memory-usage
Reduce memory usage for fuse mount
2015-07-26 19:20:13 +02:00
Alexander Neumann b85927576b Address code review comments 2015-07-26 18:01:20 +02:00
Alexander Neumann d1629e1e4e fuse: move to top level 2015-07-26 17:20:26 +02:00
Alexander Neumann bd746a0425 fuse: refactor and add tests for fuse.file 2015-07-26 16:43:42 +02:00
Alexander Neumann 7608610d72 Merge pull request #250 from restic/remove-dead-code
Remove dead code
2015-07-26 15:12:41 +02:00
Alexander Neumann 9753c37e31 Remove dead code
This removes dead code (functions that aren't called) detected with
`deadcode`.
2015-07-26 14:56:34 +02:00
Alexander Neumann 55ddd5317d Reduce memory usage for fuse mount
This changes `repository.LoadBlob()` so that a destination buffer must
be provided, which enables the fuse code to use a buffer from a
`sync.Pool`. In addition, release the buffers when the file is closed.
At the moment, the max memory usage is defined by the max file size that
is read in one go (e.g. with `cat`). It could be further optimized by
implementing a LRU caching scheme.
2015-07-26 14:25:59 +02:00
Alexander Neumann 90ed679e88 Merge pull request #246 from restic/id-as-array
Use array instead of hash for backend.ID
2015-07-25 22:32:58 +02:00
Alexander Neumann 054256468b Fix message display for parent snapshot id 2015-07-25 18:10:23 +02:00
Alexander Neumann 5cdcc99eba Use array instead of hash for backend.ID
Since backend.ID is always a slice of constant length, use an array
instead of a slice. Mostly, arrays behave as slices, except that an
array cannot be nil, so use `*backend.ID` insteaf of `backend.ID` in
places where the absence of an ID is possible (e.g. for the Subtree of a
Node, which may not present when the node is a file node).

This change allows to directly use backend.ID as the the key for a map,
so that arbitrary data structures (e.g. a Set implemented as a
map[backend.ID]struct{}) can easily be formed.
2015-07-25 18:01:57 +02:00
Alexander Neumann 2fa6124545 Merge pull request #245 from restic/fix-224
restore: ignore errors
2015-07-25 13:17:09 +02:00
Alexander Neumann deaca157fe restore: ignore errors
Also add a test for restoring a file that is owned by root. Closes #244.
2015-07-25 12:59:59 +02:00
Alexander Neumann c91f185818 Add FROSCON talk 2015-07-25 12:17:26 +02:00
Alexander Neumann b5ebd702fe Merge pull request #242 from restic/add-exclude-patterns-to-snapshot
Record exclude patterns in snapshot
2015-07-23 20:11:43 +02:00
Alexander Neumann cc34401152 Record exclude patterns in snapshot
This adds the exclude patterns used to create a backup in the snapshot,
so we can later compute statistics (like git does) on the data
structure, e.g. added/removed files etc. For that, we need the exclude
pattern.
2015-07-22 22:43:32 +02:00
Alexander Neumann ec3893e655 Merge pull request #240 from restic/fix-fuse-symlinks
fuse: Display symlinks properly
2015-07-21 22:16:33 +02:00
Alexander Neumann 9911d46996 fuse: rename child/children -> node/items 2015-07-21 21:34:59 +02:00
Alexander Neumann 3f4b5b8d48 fuse/mount: display symlinks properly 2015-07-21 21:25:05 +02:00
Alexander Neumann 1ac72b8813 Fix style issue 2015-07-21 21:24:06 +02:00
Alexander Neumann 99dae57b4f fuse: use node.Type instead of node.Mode 2015-07-21 21:23:40 +02:00
Alexander Neumann aeb5a694d3 Merge pull request #238 from restic/fix-checks-on-bsd
Refactor skipping symlink timestamp checks on *bsd and darwin
2015-07-21 19:47:33 +02:00
Alexander Neumann ac8d01ac8c Merge pull request #231 from restic/implement-filter-functions
Add filter implementation for files
2015-07-20 21:33:16 +02:00
Alexander Neumann 258b6a77ee Refactor skipping symlink ModTime checks, add OpenBSD 2015-07-20 21:29:21 +02:00
Alexander Neumann bd3ce5d4a3 Fix tests on freebsd 2015-07-20 21:08:29 +02:00
Alexander Neumann 1da89253cf Add include filter for restore
Include and exclude filter are mutually exclusive.
2015-07-20 19:21:01 +02:00
Alexander Neumann c0337a2675 Add exclude filter to restorer and 'restore' command 2015-07-20 19:21:01 +02:00
Alexander Neumann 7fd52f9f57 Add exclude filter to archiver and 'backup' command 2015-07-20 19:21:01 +02:00
Alexander Neumann 0d8bad273d Remove combined include/exclude filters 2015-07-20 19:21:01 +02:00
Alexander Neumann b425ea19e5 filter: fix bug, copy slice with new pattern 2015-07-20 19:21:01 +02:00
Alexander Neumann e9285539be filter: implement handling `**` 2015-07-20 19:21:01 +02:00
Alexander Neumann bbdb2ebfa0 Add filter implementation for files 2015-07-20 19:21:01 +02:00
Alexander Neumann 7e0a9aa565 Merge pull request #122 from rakoo/fuse
Add fuse mount for browsing snapshots
2015-07-19 23:34:02 +02:00
Matthieu Rakotojaona 77c0f69dd0 Don't test fuse on non-darwin 2015-07-19 23:24:52 +02:00
Matthieu Rakotojaona 3767eb2675 Unmount and remove directory for mount in tests 2015-07-19 23:04:18 +02:00
Matthieu Rakotojaona e44716381c Unmount when closing application from cli 2015-07-19 23:04:18 +02:00
Matthieu Rakotojaona eadfcd3f9e Add waitForMount for OSX 2015-07-19 23:04:18 +02:00
Matthieu Rakotojaona fe6f1c01f3 Make inodeFromBackendId more explicit 2015-07-19 23:04:18 +02:00
Matthieu Rakotojaona a4d122e5ae Cleanup mount after test 2015-07-19 23:04:18 +02:00
Matthieu Rakotojaona d7888d4dd5 Fix checks in fuse tests 2015-07-19 23:04:18 +02:00
Matthieu Rakotojaona ca6b7ec533 Add Index.LookupSize 2015-07-19 23:04:18 +02:00
Matthieu Rakotojaona c9d8ab9be5 Skip fuse tests for non-darwin 2015-07-19 23:04:18 +02:00
Matthieu Rakotojaona b1426826cc Extract fuse structs 2015-07-19 23:03:33 +02:00