Commit Graph
78 Commits
Author SHA1 Message Date
Carl Johnsen 6ef151f4af Cleaned up FileProcessor 2025-02-27 14:45:05 +01:00
Carl Johnsen 6873162002 Additional internal profiling resolution 2025-02-26 16:09:23 +01:00
Carl Johnsen a49c66bcb5 Added caching of localrestoredatabase data 2025-02-25 17:42:30 +01:00
Carl Johnsen bf3a26ffcd Added more internal profiling timers to the FileProcessor to get more high-resolution profiling 2025-02-25 16:49:46 +01:00
Carl Johnsen e773907eed Changed from allocating a new byte[] buffer in the decompressor to use the Buffers.ArrayPool 2025-02-25 16:45:55 +01:00
Carl Johnsen b86794791b Reallocating byte[] buffer takes up too long time if done for each file 2025-02-25 16:35:46 +01:00
Carl Johnsen 17e2c0b9cf Added ConfigureAwait(false) 2025-02-18 09:20:28 +01:00
Carl Johnsen 043b9230b5 VerifyLocalBlocks opened file in incorrect mode, and the target file may not exist. 2025-02-10 13:44:02 +01:00
Carl Johnsen 82019ea28e Modified VerifyTargetBlocks to not evict block from cache. It is now handled outside, in case of file name retargeting when overwrite is false. 2025-02-10 13:42:27 +01:00
Carl Johnsen 0b3ff33716 Moved retire on exception to final, so regardless of how the FileProcessor exits, it retires the channels. 2025-02-10 12:38:24 +01:00
Carl Johnsen 3b9fc188e1 Retire block request and response on exception in FileProcessor 2025-02-10 12:34:44 +01:00
Carl Johnsen 259322f0d9 CopyOldTargetBlocksToNewTarget was made async 2025-02-10 12:34:16 +01:00
Carl Johnsen 6e2f8156f8 VerifyLocalBlocks should only perform checks when the target differs from the original. 2025-02-10 12:33:45 +01:00
Carl Johnsen dbd3520d9c Formatting 2025-02-10 12:18:16 +01:00
Kenneth SkovhedeandGitHub 997891525a Updated license-updater to update csproj files (#5898)
* Updated license-updater to update csproj files

* License updates
2025-01-22 21:04:19 +01:00
Carl Johnsen fe7cb13fde Fixed issue with stream not being open in the correct mode during restore 2025-01-17 12:27:05 +01:00
Kenneth SkovhedeandGitHub 9464caf622 Feature/update license 2025 (#5851)
* Fixed some minor whitespace issues

* Updated all copyright to 2025
2025-01-07 09:40:39 +01:00
Carl Johnsen 46b05b94ef Limit file name conflict attempts to 100 and log an error if exceeded 2025-01-06 16:01:53 +01:00
Carl Johnsen 6f263ad874 Added a note about potential memory consumption of restores FileProcessor 2025-01-06 16:00:11 +01:00
Carl Johnsen 284b14b72f Merge branch 'master' into bugfix/restore-overwrite 2025-01-06 14:43:03 +01:00
Carl Johnsen 88846251b1 Restoring a symlink that already exists triggers an overwrite of the file, which should count towards number of files restored. 2025-01-06 08:14:32 +01:00
Carl Johnsen 1bea0f3696 Restored empty files should count towards the restoration file count. 2025-01-05 12:46:08 +01:00
Carl Johnsen 4cd565d592 Added handling of already restored timestamp-retargeted files 2025-01-05 12:09:38 +01:00
Carl Johnsen b759b4564d Added docstrings to new functions 2025-01-05 12:09:04 +01:00
Carl Johnsen eb64320a49 Changed the reporting of restored files to match the legacy restore's reporting. 2025-01-05 11:51:52 +01:00
Carl Johnsen 637bfcefc8 Forgot to check whether the file exists 2025-01-05 11:25:19 +01:00
Carl Johnsen eba477c271 Added handling of the 'overwrite' option in the new restore flow 2025-01-05 10:44:08 +01:00
Carl Johnsen f76bf90e68 Added additional dry run logging 2025-01-05 10:43:23 +01:00
Carl Johnsen 8e92754efd VerifyLocalBlocks now keeps track of internally verified blocks for logging 2025-01-05 10:43:01 +01:00
Carl Johnsen be99f03bac VerifyLocalBlocks wasn't respecting dry run properly 2025-01-05 10:41:33 +01:00
Carl Johnsen a14d29da93 Modified VerifyTargetBlocks to also return the blocks that were verified. 2025-01-05 10:40:14 +01:00
Carl Johnsen a7507fb765 Simplified variable assignment 2025-01-05 10:35:50 +01:00
Carl Johnsen 83d1617984 Fixed the IO calls to also work on Windows 2025-01-03 23:27:35 +01:00
Carl Johnsen 52018db0bb Added handling and warning throwing for when the folder for restored files aren't created properly 2025-01-03 20:48:58 +01:00
Carl Johnsen 2d6e1d7ff7 Changed the new restore version to use explicit CoCoL channels 2024-12-10 04:10:34 +01:00
Carl Johnsen ab7fcb2e4a Opening a filestream doesn't work as expected on windows (caught in ProblematicPathTests) - changed to SystemIO.IO_OS.FileOpen* 2024-12-05 08:48:54 +01:00
Carl Johnsen 0e36c4393a Added progress printing during restore 2024-12-03 10:35:33 +01:00
Carl Johnsen 76240550ed Add preallocation option for restored files and update related documentation 2024-12-03 09:10:36 +01:00
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 6c66fee921 Cleanup FileProcessor and rework docstrings 2024-12-02 20:27:21 +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 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 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