summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFlorian Pritz <bluewind@xinu.at>2018-09-13 23:46:31 +0200
committerFlorian Pritz <bluewind@xinu.at>2018-09-13 23:46:31 +0200
commitd9edd65b1f66d64d28a99f8e8a060f1a552b27fd (patch)
tree746719a3e963b7b4656e366a9ea959ed94fbd2ea
parent702569bd10feca3f32e1b0740a24de39210b9331 (diff)
downloadApp-BorgRestore-d9edd65b1f66d64d28a99f8e8a060f1a552b27fd.tar.gz
App-BorgRestore-d9edd65b1f66d64d28a99f8e8a060f1a552b27fd.tar.xz
Change prepare_data_in_memory default to 0 to enable direct-to-db
Also instantly deprecate the option since it is only a short term fix in case someone notices problems with the new code. Signed-off-by: Florian Pritz <bluewind@xinu.at>
-rw-r--r--Changes4
-rw-r--r--lib/App/BorgRestore/Settings.pm11
2 files changed, 10 insertions, 5 deletions
diff --git a/Changes b/Changes
index a7d4b7b..bd95acb 100644
--- a/Changes
+++ b/Changes
@@ -1,6 +1,10 @@
Revision history for Perl extension App-BorgRestore
{{$NEXT}}
+ - Write data directly to DB instead of preparing it in memory first. The
+ new algorithm should be faster and uses constant memory. If you want the
+ old one back for any reason look at the '$prepare_data_in_memory' config
+ option. This option is deprecated and will be removed in the future.
3.1.0 2018-08-25T09:46:27Z
- Add --json option
diff --git a/lib/App/BorgRestore/Settings.pm b/lib/App/BorgRestore/Settings.pm
index 0d9d015..9ef03d7 100644
--- a/lib/App/BorgRestore/Settings.pm
+++ b/lib/App/BorgRestore/Settings.pm
@@ -81,15 +81,16 @@ cache.
=item C<$prepare_data_in_memory>
-Default: 1
+Default: 0
When new archives are added to the cache, the modification time of each parent
directory for a file's path are updated. If this setting is set to 1, these
updates are done in memory before data is written to the database. If it is set
to 0, any changes are written directly to the database. Many values are updated
multiple time, thus writing directly to the database is slower, but preparing
-the data in memory may require a substaintial amount of memory. If you run into
-out-of-memory problem try setting this to 0.
+the data in memory may require a substaintial amount of memory.
+
+New in version 3.2.0. Deprecated in v3.2.0 for future removal possibly in v4.0.0.
=back
@@ -104,7 +105,7 @@ out-of-memory problem try setting this to 0.
{regex => "^/", replacement => "mnt/snapshots/root/"},
);
$sqlite_cache_size = 2097152;
- $prepare_data_in_memory = 1;
+ $prepare_data_in_memory = 0;
1; #ensure positive return value
@@ -127,7 +128,7 @@ our @backup_prefixes = (
{regex => "^/", replacement => ""},
);
our $sqlite_cache_size = 102400;
-our $prepare_data_in_memory = 1;
+our $prepare_data_in_memory = 0;
method new_no_defaults($class: $deps = {}) {
my $self = {};