Commit Graph

60 Commits (master)

Author SHA1 Message Date
Vitaliy Filippov 9824cb2fb7 Experimental: "cacheless restore" using a seekable stream
Do two passes instead of just sequentially writing all chunks to the standard output.
On the first pass, all "chunk emit" instructions are remembered together with their output
positions indexed by bundle id, and all "byte emit" instructions are executed using seeks.
On the second pass, all remembered "chunk emit" instructions are executed in the bundle
order. This makes zbackup decompress every used bundle only ONCE instead of doing
it (basically the same work) many times while reading different chunks.

This allows for bigger bundle sizes (I use 32M), which reduces the number of files
in the repository and makes it more cloud-storage-sync friendly, and further improves
the compression ratio.
2015-08-20 19:15:10 +03:00
Vladimir Stackov ff113999a2 Fixed GC usage notice 2015-08-19 11:30:23 +03:00
Vladimir Stackov 0631d70c4b Added switch for choosing fast or deep GC 2015-08-19 10:32:16 +03:00
Vladimir Stackov a064d9a1d1 Index pseudo-GC implementation 2015-08-12 16:27:54 +03:00
Vladimir Stackov 3ff24945a2 Added boilerplates for index GC
Fixed misspelling: s/indicies/indexes/g
2015-08-06 14:02:55 +03:00
Vladimir Stackov 38bf13ef83 An attempt to fix some of the coverity issues 2015-02-10 14:40:11 +03:00
Vladimir Stackov f28b2ae7c6 Added reset action for config command 2015-02-06 13:31:09 +03:00
Vladimir Stackov f656a24021 Fixed repo migration (#60) 2015-02-06 10:36:38 +03:00
Vladimir Stackov ebe9daa056 Class/headers refactoring, removed dead ZCollect 2015-02-04 14:38:22 +03:00
Vladimir Stackov 9cae833045 Make keywords non-static for #48
As suggested on https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64830
2015-01-30 11:27:11 +03:00
Vladimir Stackov 24303c1309 Include git version in binary build 2015-01-25 20:56:41 +03:00
Vladimir Stackov 5217c64709 Added catch-all handler (#52) 2015-01-25 19:37:30 +03:00
Vladimir Stackov 4298a0f111 Fix for #50 and additional workaround for #48 2015-01-25 19:33:01 +03:00
Vladimir Stackov a04128961a Respect options on storage initialization 2015-01-23 15:08:02 +03:00
Vladimir Stackov 30fe01a2a0 Added support for -o lzma.compression_level:
* Closes https://github.com/zbackup/zbackup/pull/10 completely
* editConfigInteractively moved to ZBackupBase again (to make possible
  to use Config almost anywhere)
2015-01-23 14:32:40 +03:00
Vladimir Stackov 9bf64ae1fe Storable variables validator concept 2015-01-20 15:46:08 +03:00
Vladimir Stackov a5c7857408 Leave deprecated StorageInfo fields alone 2015-01-19 18:08:24 +03:00
Vladimir Stackov f9fc3c0b52 Finally, configuration management works fine 2015-01-19 17:29:01 +03:00
Vladimir Stackov 4a7314cb7e A little bit more engineering for Config 2015-01-19 15:19:45 +03:00
Vladimir Stackov 2f736764ac Storable options is almost done 2015-01-18 03:42:52 +03:00
Vladimir Stackov 414dfcdf74 Runtime configuration management done 2015-01-17 20:08:15 +03:00
Vladimir Stackov ab2568d38c A little bit more work on configuration management 2015-01-16 18:18:06 +03:00
Vladimir Stackov ba9e2b3a6c Some more boilerplates for ZConfig 2015-01-13 18:01:47 +03:00
Vladimir Stackov bee7efc9e5 spawnEditor was moved to ZBackupBase 2014-12-30 19:27:31 +03:00
Vladimir Stackov ffbe4ba00d ZConfig code cleanup 2014-12-30 17:13:48 +03:00
Vladimir Stackov f86de5662a Added concept of config editor 2014-12-29 17:24:09 +03:00
Vladimir Stackov 6276815579 Slight refactoring, boilerplates for config 2014-12-26 17:06:50 +03:00
Vladimir Stackov 84caffd375 Initial prototype of protected config storage 2014-12-26 14:16:44 +03:00
Vladimir Stackov a331eb094f Added command to change repo password
Also:
- Slight refactoring (zcollector renamed to backup_collector)
- Fixed typo (s/genarate/generate/g)
2014-12-15 14:13:34 +03:00
Vladimir Stackov 8720e14f5e Release version 1.4 2014-12-12 09:10:26 +03:00
Am1GO 37aed10321 Little bit more source headers alteration 2014-12-11 10:59:26 +03:00
Am1GO 8f47a9e312 Copyright added to source headers 2014-12-11 10:50:15 +03:00
Am1GO 161b691474 Contributors list moved to separate file 2014-12-10 14:44:44 +03:00
Am1GO 9e7ebcb03c Merge branch 'lzo-pull-request' of github.com:BBBSnowball/zbackup into BBBSnowball-lzo-pull-request
Conflicts:
	.gitignore
	CMakeLists.txt
	bundle.cc
	chunk_storage.cc
	zbackup.cc
	zbackup.hh
	zbackup.proto
2014-12-09 15:21:51 +03:00
Gleb Golubitsky c1433dd524 dropping away unneeded threads param in ZRestore
Signed-off-by: Gleb Golubitsky <sectoid@gnolltech.org>
2014-11-27 18:29:09 +02:00
Gleb Golubitsky e5cebd17e6 refactoring to eject gc code from ZRestore and make world a bit better place
Signed-off-by: Gleb Golubitsky <sectoid@gnolltech.org>
2014-11-27 18:20:41 +02:00
Gleb Golubitsky 7607f21728 fixing typo in the usage help message
Signed-off-by: Gleb Golubitsky <sectoid@gnolltech.org>
2014-11-27 17:11:30 +02:00
Gleb Golubitsky 3747a3e5c4 Removing empty directories in bundles after performing garbage collection
Signed-off-by: Gleb Golubitsky <sectoid@gnolltech.org>
2014-11-25 15:17:07 +02:00
Gleb Golubitsky 3522786202 Merge used chunks into single index instead of making new chunks for each used
Signed-off-by: Gleb Golubitsky <sectoid@gnolltech.org>
2014-11-25 14:42:15 +02:00
Gleb Golubitsky c57adde8f6 Added gc command to usage information
Signed-off-by: Gleb Golubitsky <sectoid@gnolltech.org>
2014-11-25 12:46:07 +02:00
Vitaliy Filippov 2c43343782 Basic garbage collection support 2014-11-25 12:46:07 +02:00
Konstantin Isakov 73ec33267d Merge pull request #17 from Am1GO/BackupExchangerInitialImplementation
Backup exchanger initial implementation
2014-10-17 12:43:53 +04:00
Konstantin Isakov 9709e1cdb8 Release version 1.3. 2014-10-10 13:59:21 +04:00
Konstantin Isakov 34f6cb14d6 Add OpenSSL exception to the license, add the full texts of all licenses, update the copyright of the program to 2014. 2014-10-10 13:57:25 +04:00
Am1GO 1d3a568a1b Slight refactoring 2014-10-02 22:13:15 +04:00
Am1GO 0a61cc8a17 Initial bundle support for backup exchange
Adler32 calculation for destination is in development
2014-10-01 13:43:46 +04:00
Am1GO 83bdb77c4d Index support for backup exchange 2014-09-30 17:36:16 +04:00
Am1GO 3cee914399 Initial support for backup exchange
Bundle and index exchange is under development yet
2014-09-30 14:36:28 +04:00
Am1GO 55b9486473 Added some boilerplates for backup exchanger 2014-08-27 12:12:47 +04:00
Am1GO 9f8c631561 Added all appropriate sanity checks for cli 2014-08-22 14:40:49 +04:00