Commit Graph
10165 Commits
Author SHA1 Message Date
Carl Johnsen 6ba956dfcd Moved all database operations to the LocalRestoreDatabase.
Also changed the old changes, so that the functions related to the legacy restore remains untouched.
2024-12-03 08:35:14 +01:00
Carl Johnsen 6413014c7d Added internal profiling of VolumeManager alongside proper exception handling. 2024-12-02 20:58:46 +01:00
Carl Johnsen 1e3e67c053 Update the construction of the processes within RestoreHandler 2024-12-02 20:48:20 +01:00
Carl Johnsen 99adcdd17c Added license, docstrings and logging to VolumeManager 2024-12-02 20:41:56 +01:00
Carl Johnsen 7436606455 Cleanup VolumeDownloader 2024-12-02 20:32:38 +01:00
Carl Johnsen d0df0c054e Cleanup VolumeDecryptor 2024-12-02 20:29:40 +01:00
Carl Johnsen 1284adec3b Cleanup VolumeDecompressor 2024-12-02 20:28:45 +01:00
Carl Johnsen 6c66fee921 Cleanup FileProcessor and rework docstrings 2024-12-02 20:27:21 +01:00
Carl Johnsen 9070ea2382 Added docstring and cleaned up FileLister 2024-12-02 20:12:06 +01:00
Carl Johnsen a663c46178 Removed debug depth for channels 2024-12-02 20:07:49 +01:00
Carl Johnsen 46983ee5cd Added proper handling of the internal profiling timers in BlockManagers SleepableDictionary 2024-12-02 19:59:56 +01:00
Carl Johnsen 4ae37292a1 Changed the count dictionaries in BlockManager to be normal dictionaries, as they are faster and the accesses to them are serialized anyways. 2024-12-02 17:56:33 +01:00
Carl Johnsen b44934ac4b Removed database from BlockManagers cache 2024-12-02 17:48:29 +01:00
Carl Johnsen 9e4e1e246b Added docstrings to BlockManager 2024-12-02 15:49:20 +01:00
Carl Johnsen 3d8330bc58 Cleaned up BlockManager 2024-12-02 15:44:01 +01:00
Carl Johnsen e7b2338214 Renamed VolumeCache to VolumeManager for consistency 2024-12-02 15:43:52 +01:00
Carl Johnsen 1bbe26330f Bump CoCoL package version to 1.8.1 2024-12-02 15:18:09 +01:00
Carl Johnsen 7aa19f851e Add configurable volume downloaders for restore process 2024-12-02 15:16:21 +01:00
Carl Johnsen 533088684b Consistent naming of decryptors 2024-12-02 15:12:50 +01:00
Carl Johnsen b6ed72bd6c Reworked the restore CSP network 2024-12-02 15:09:23 +01:00
Carl Johnsen 3156d43adc BlockVolumeReaders are expensive to create - cache them instead. 2024-12-02 10:55:45 +01:00
Carl Johnsen f85ffabe3e Linux SQLite doesn't want values in quotes 2024-12-02 10:45:52 +01:00
Carl Johnsen cdf0c28fd8 Added internal profiling as an option. Currently only implemented in the restore process. 2024-11-29 05:49:03 +01:00
Carl Johnsen 87747b5580 The metadata SQL query is now prepared in the fileprocessor 2024-11-29 05:46:17 +01:00
Carl Johnsen 079598c2e8 Added database function for getting files alongside symlinks to restore 2024-11-29 03:41:41 +01:00
Carl Johnsen 6aa202fbea Already present files were incorrectly truncated 2024-11-29 03:38:53 +01:00
Carl Johnsen deb98e3322 CreateDirectoryStructure wouldn't always create the target folders, if the file database doesn't list the folder. Empty files should create the directory, if it doesn't exist. 2024-11-28 10:43:51 +01:00
Carl Johnsen 9bcda7d6cf Symlinks are now handled correctly 2024-11-28 09:22:09 +01:00
Carl Johnsen 1ecb6e7c35 Fixed the metadata block query so that it finds the correct blocks 2024-11-27 11:28:27 +01:00
Carl Johnsen 4128ea3ff3 Empty files can also not have a data block associated 2024-11-27 11:27:55 +01:00
Carl Johnsen 7aa9db533e Added preliminary metadata restoration 2024-11-26 20:01:19 +01:00
Carl Johnsen 164b2a212c Already restored blocks are now tracked according to the cache tracking strategy as well 2024-11-25 17:32:56 +01:00
Carl Johnsen 952aebf685 VolumeDownloader handles when an eviction requests relates to a volume that is not in cache 2024-11-25 17:32:00 +01:00
Carl Johnsen baaa17a738 Make cache_max and eviction_ratio fields readonly 2024-11-25 17:23:42 +01:00
Carl Johnsen 823b896da1 Removed redundant TODOs 2024-11-25 15:23:59 +01:00
Carl Johnsen c26c54c5f7 Fixed naming inconsistencies in the new restore options 2024-11-25 15:17:10 +01:00
Carl Johnsen 7c79535572 VolumeDownloader now deletes temporary volumes from both cache and disk when they are no longer needed during restore. 2024-11-25 15:16:03 +01:00
Carl Johnsen 7ee174b6f8 Execute the blockcount check and decrement in a single SQL statement 2024-11-25 09:33:32 +01:00
Carl Johnsen 27c4f93af2 The FileProcessor bursts as much as possible by default 2024-11-25 08:53:27 +01:00
Carl Johnsen ebac24ce04 Rather than specifying multiple guids for a restore, use the one that the restore database has. 2024-11-25 08:52:51 +01:00
Carl Johnsen 5625c4c1ce Add configurable options for scaling the number of restore file processors, decryptors, and decompressors 2024-11-22 16:53:16 +01:00
Carl Johnsen fe6f91dc9a Add option for using legacy restore method 2024-11-22 16:40:54 +01:00
Carl Johnsen 5436b2f9f5 Add eviction ratio option for restore cache management 2024-11-22 16:32:53 +01:00
Carl Johnsen de24a9f15a Added the option to control the size of the data block cache during restore 2024-11-22 16:24:27 +01:00
Carl Johnsen 0cd9374bed Added comments and docstrings 2024-11-22 15:26:04 +01:00
Carl Johnsen 890fa2ce52 Add copyright notices 2024-11-22 11:47:07 +01:00
Carl Johnsen 43a392f139 The tempfiletable name is also required externally from the database. 2024-11-22 11:26:25 +01:00
Carl Johnsen 7094786e23 Removed unnessecarily complex nested ternary statements. 2024-11-22 11:26:01 +01:00
Carl Johnsen c798910658 If the target file already exists and is verified, do nothing more 2024-11-22 11:25:35 +01:00
Carl Johnsen 393cfcf5b2 Broken files tracker wasn't initialized 2024-11-22 11:24:55 +01:00