Commit Graph

28 Commits

Author SHA1 Message Date
Alexander Neumann b85927576b Address code review comments 2015-07-26 18:01:20 +02:00
Alexander Neumann bd746a0425 fuse: refactor and add tests for fuse.file 2015-07-26 16:43:42 +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 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
Matthieu Rakotojaona ca6b7ec533 Add Index.LookupSize 2015-07-19 23:04:18 +02:00
Alexander Neumann 54c4c29a89 Add checker and command 'check' to replace 'fsck' 2015-07-11 16:27:38 +02:00
Alexander Neumann cbcf58f1c0 repository: Improve error message 2015-07-11 16:13:11 +02:00
Florian Weingarten 36a62cf77d Extract chunker 2015-07-08 16:58:23 -04:00
Alexander Neumann 5c1fe5784a repository: Load index in parallel 2015-07-05 11:07:10 +02:00
Alexander Neumann 14d252dfba Allow cancelling parallel workers on files 2015-07-05 11:07:10 +02:00
Alexander Neumann 0b531210eb Add repository.FilesInParallel 2015-07-05 11:07:10 +02:00
Alexander Neumann 885b27fdbb Add test and benchmark for LoadIndex 2015-07-05 11:07:10 +02:00
Alexander Neumann 58600e3bb8 repository: Add comments, silence golint 2015-07-05 11:07:10 +02:00
Alexander Neumann 9a02148daf repository: Rename Save() -> SaveAndEncrypt() 2015-07-05 11:07:10 +02:00
Alexander Neumann 03983f0907 repository: Rename Load() -> LoadAndDecrypt() 2015-07-05 11:07:10 +02:00
Alexander Neumann c553a57e0d repository: Refactor Config 2015-07-05 11:07:10 +02:00
Alexander Neumann 867f6c8e24 repository: Rename receiver: s -> r
No functional changes.
2015-07-05 11:07:10 +02:00
Alexander Neumann 0ad3d71f01 repository: Add more debug to Create() 2015-06-28 13:52:22 +02:00
Alexander Neumann 26e4d2e019 tests: Remove more flags 2015-06-28 13:52:22 +02:00
Alexander Neumann 189a33730a tests: Standardize use of SetupRepo/Teardown 2015-06-28 13:52:22 +02:00
Emil Hessman f96ff37ff5 repository: fix package doc typo 2015-06-28 09:30:33 +02:00
Alexander Neumann 65c3aead3e Add index.Dump() 2015-05-17 20:58:22 +02:00
Alexander Neumann f773feeb04 Remove Repository.Close() and .Location() 2015-05-17 20:58:22 +02:00
Alexander Neumann af381c2ab0 Remove Repository.Remove() 2015-05-17 20:58:22 +02:00
Alexander Neumann eb6dfcf58c Remove Repository.Test() 2015-05-17 20:58:22 +02:00
Alexander Neumann 6e38a8a033 Move FindSnapshot, make Repository.List() return IDs 2015-05-17 20:58:22 +02:00
Alexander Neumann 95536e8a21 Rename 'Repo' -> 'Repository' 2015-05-09 23:59:58 +02:00
Alexander Neumann 232c472836 Move package 'repo' to package 'repository' 2015-05-09 23:52:03 +02:00