Commit Graph

4234 Commits

Author SHA1 Message Date
Igor Fedorenko bda8d7722e restorer: Optimize empty file restore
don't create fileInfo structs for empty files. this saves memory.
this also avoids extra serial scan of all fileInfo, which should
make restore faster and more consistent.

Signed-off-by: Igor Fedorenko <igor@ifedorenko.com>
2018-10-14 17:39:42 +02:00
Igor Fedorenko c2bcb764cd restorer: Add a note on hardlink metadata
Signed-off-by: Igor Fedorenko <igor@ifedorenko.com>
2018-10-14 17:39:42 +02:00
Igor Fedorenko 9e24154ec9 restore: significantly reduce memory footprint
reworked restore error callback to use file location
path instead of much heavier Node. this reduced restore
memory usage by as much as 50% in some of my tests.

Signed-off-by: Igor Fedorenko <igor@ifedorenko.com>
2018-10-14 17:39:42 +02:00
Igor Fedorenko 9f3ca97ee8 restore: Chang fileInfo to use snapshot location instead of target path
* uses less memory as common prefix is only stored once
* stepping stone for simpler error callback api, which
  will allow further memory footprint reduction

Signed-off-by: Igor Fedorenko <igor@ifedorenko.com>
2018-10-14 17:39:42 +02:00
Igor Fedorenko 32d5ceba87 restore: Fix packcache capacity math with failed downloads
Signed-off-by: Igor Fedorenko <igor@ifedorenko.com>
2018-10-14 17:39:42 +02:00
Igor Fedorenko e010f3b884 restore: Fix small memory leak in filesWriter, add tests
Signed-off-by: Igor Fedorenko <igor@ifedorenko.com>
2018-10-14 17:39:42 +02:00
Alexander Neumann 941202c119 restore: Rename things, match the rest of the project 2018-10-14 17:39:37 +02:00
Alexander Neumann c021ad2334 restore: Move documentation to godoc 2018-10-14 17:39:35 +02:00
Igor Fedorenko 2b3420820b go mod vendor
Signed-off-by: Igor Fedorenko <igor@ifedorenko.com>
2018-10-14 17:37:30 +02:00
Igor Fedorenko da57302fca restore: Removed legacy restore implementation
Signed-off-by: Igor Fedorenko <igor@ifedorenko.com>
2018-10-14 17:37:30 +02:00
Igor Fedorenko 1869930d95 restore: New optimized multithreaded implementation
Signed-off-by: Igor Fedorenko <igor@ifedorenko.com>
2018-10-14 17:37:30 +02:00
Igor Fedorenko 1213d8fef4 Cleanup: more realistic restorer test data setup
Signed-off-by: Igor Fedorenko <igor@ifedorenko.com>
2018-10-14 17:37:30 +02:00
Alexander Neumann a432b42c81 self-update: Check current version before download 2018-10-14 17:29:46 +02:00
Alexander Neumann 7d0f2eaf24 self-update: Use correct path to restic binary
Closes #2041
2018-10-14 17:29:19 +02:00
Alexander Neumann 41a4d67d93 Merge pull request 1962 from mholt/lsjson
ls: Stream output when using --json option
2018-10-14 15:51:38 +02:00
Alexander Neumann afde60e433 Merge pull request #2039 from restic/fix-2038
snapshots: Don't print empty line for --compact
2018-10-13 21:24:26 +02:00
Alexander Neumann d7baa67acb snapshots: Don't print empty line for --compact
Closes #2038
2018-10-13 20:17:34 +02:00
Alexander Neumann 167397c18c Set development version for 0.9.3 2018-10-13 13:48:31 +02:00
Alexander Neumann be36c5f150 Add version for 0.9.3 2018-10-13 13:48:31 +02:00
Alexander Neumann 9484a14ab2 Update manpages and auto-completion 2018-10-13 13:48:30 +02:00
Alexander Neumann 0f5fc8fb3d Generate CHANGELOG.md for 0.9.3 2018-10-13 13:48:29 +02:00
Alexander Neumann a5b40e9372 helpers: Use version string in built binaries 2018-10-13 13:48:03 +02:00
Alexander Neumann c5ec4efe91 Update prepare-release 2018-10-13 13:48:03 +02:00
Alexander Neumann e64a0e0454 helpers: Don't run sha256sums in build 2018-10-13 13:48:03 +02:00
Alexander Neumann 8b5b031f90 Prepare changelog for 0.9.3 2018-10-13 13:48:03 +02:00
Alexander Neumann 4a2134bbc5 changelog: Rename issue 2018-10-13 13:48:03 +02:00
Alexander Neumann 484844aa1a Document the build and release processes 2018-10-13 13:48:03 +02:00
Alexander Neumann 4ed10239ad doc: Add developer information 2018-10-11 22:37:25 +02:00
Alexander Neumann c4896ed642 Add build-release-binaries 2018-10-11 22:37:25 +02:00
Alexander Neumann 29aaec383c Move scripts/ to helpers/ 2018-10-11 22:37:25 +02:00
Alexander Neumann 0cb241b7d3 Remove build tag `release` 2018-10-11 19:40:38 +02:00
Alexander Neumann de4750b8e0 Add entry to changelog 2018-10-11 19:37:20 +02:00
Alexander Neumann 7b91c40e21 Merge pull request #2033 from j6s/feature.cache-size
Output directory size in cache command
2018-10-11 19:34:57 +02:00
Alexander Neumann cc9bf02da1 Merge pull request #2036 from SimJoSt/patch-1
doc: cache: fix typo
2018-10-11 19:34:14 +02:00
Joda Stößer b7959c44d2
doc: cache: fix typo 2018-10-11 14:00:51 +02:00
Johannes Hertenstein 277cba4b32 Catch errors when walking cache directories 2018-10-08 15:47:34 +02:00
Johannes Hertenstein ed651df19b Use correct method for joining paths 2018-10-08 15:47:08 +02:00
Johannes Hertenstein 641dc65e6e Output directory size in cache command 2018-10-07 14:37:51 +02:00
Alexander Neumann de9136b29f Merge pull request #2022 from moritzdietz/update-faq
Add example to spot path expansion errors
2018-10-07 12:11:13 +02:00
Moritz Dietz b36345fd84 Add example to spot path expansion errros 2018-10-07 12:09:46 +02:00
Alexander Neumann 03402c8a04 Merge pull request #2031 from danielb2/latest
use latest instead of newest in forget language
2018-10-06 21:20:21 +02:00
Daniel Bretoi 966e5a5575 use latest instead of newest in forget language 2018-10-06 12:02:22 -07:00
Alexander Neumann 5aa0deeff9 Merge pull request #2026 from gottwald/update-go4docker
Update Go version to 1.11.1 in Docker build script
2018-10-06 13:11:19 +02:00
Alexander Neumann af4d822380 Merge pull request #2025 from kurin/fixloop
b2: simplify object iteration
2018-10-06 13:01:27 +02:00
Alexander Neumann fd95b86894 Merge pull request #2029 from j6s/feature.escape-docker-build
Escape subcommand in docker build script
2018-10-06 12:46:08 +02:00
Alexander Neumann 5dbef3712e Merge pull request #2027 from j6s/feature.cache-dir-information
Print base directory with cache command
2018-10-06 12:40:48 +02:00
Johannes Hertenstein 63647e93e4 Escape subcommand in docker build script 2018-10-05 22:13:49 +02:00
Johannes Hertenstein 9b8deb51ba Print base directory with cache command 2018-10-05 21:23:57 +02:00
Ingo Gottwald 2c4b0d975e Update Go version to 1.11.1 in Docker build script
Restic cannot be built with Go 1.8.3 any more, it requires at least Go
1.9.0.
2018-10-05 21:13:28 +02:00
Toby Burress 8ceda538ef b2: simplify object iteration
Blazer is moving to a simpler object list interface, so I'm changing
this here as well.
2018-10-05 11:39:02 -07:00