Commit Graph
300 Commits
Author SHA1 Message Date
Kenneth Skovhede 429bcd1f2d Include deleted blocks when recreating dindex files.
This fixes #6339
2025-07-11 15:55:36 +02:00
Carl Johnsen 0a047a37e3 SQL query inside GetEmptyMetadataBlocksetId had not only moved files, but had also changed 2025-06-19 13:20:44 +02:00
Carl Johnsen f6ac30e831 Merge remote-tracking branch 'upstream/master' into performance/mssqlite-async 2025-06-19 12:17:30 +02:00
Carl Johnsen 2412800c0c Removed the sqlite page cache option. It should be set through the environment variable, or some other way of providing a custom database configurotion 2025-06-19 11:41:39 +02:00
Carl Johnsen 3b3a7801b8 Made the LocalDatabase methods accept a cancellation token 2025-06-18 15:36:10 +02:00
Carl Johnsen bc97eaf71b Removed redundant calls to a SqliteCommand.Parameters.Clear() 2025-06-18 12:06:20 +02:00
Carl Johnsen 9ac583db94 Made all relevant using statements use await to use DisposeAsync 2025-06-18 11:53:11 +02:00
Carl Johnsen 859b65054d Simplified using statements that uses databases or accesses their methods 2025-06-18 11:52:05 +02:00
Carl Johnsen f221098c28 Formatted SQL queries - mainly adding double quotes where they were missing. 2025-06-18 10:42:08 +02:00
Carl Johnsen 8814fdebcc Added more docstrings 2025-06-17 15:13:33 +02:00
Carl Johnsen 1f97832546 Classes implementing DisposeAsync should also implement the interface 2025-06-17 15:11:25 +02:00
Kenneth Skovhede 2c5c01160c Added a check and repair for empty metadata
This PR adds a check for empty metadatasets (length = 0) and replaces such sets with a default metadataset.

This fixes #6350
2025-06-16 16:35:07 +02:00
Carl Johnsen 3d11a05400 Added .ConfigureAwait(false) to all of the await statements 2025-06-12 08:34:29 +02:00
Carl Johnsen e5337e4d26 Formatted SQL queries 2025-06-11 12:09:58 +02:00
Carl Johnsen 09251284ab Removed TODOs 2025-06-11 11:07:54 +02:00
Carl Johnsen f373880c5a Renamed ExpandInClauseParameterAsync, as one of them isn't actually async.
Postfix mssqlite has been added as well to not clash with the IDb implementation
2025-06-11 10:47:40 +02:00
Carl Johnsen 66ed9600b8 Removed unused synchronous helper method 2025-06-11 07:38:24 +02:00
Carl Johnsen 73c8471f8e Made BlocklistHashEnumerable and the code using it async 2025-06-11 07:37:22 +02:00
Carl Johnsen 23509a27eb Disposing the database disposes the reusable transaction and creates it's own transaction for PRAGMA optimize 2025-06-05 09:15:17 +02:00
Carl Johnsen 507087df1d Calling close on the connection, as that calls the backend directly, and not through the IDb interface 2025-06-05 09:13:40 +02:00
Carl Johnsen 85e6f45338 Moved some of the commits to transactions outside of database methods, as this more closely mimics the commit flow of the old IDb backend.
This was especially needed due to the Microsoft.Data.Sqlite backend not supporting nested transactions.
2025-06-03 21:44:55 +02:00
Carl Johnsen caa3c13dbe Post master merge fixes 2025-06-02 11:50:35 +02:00
Carl Johnsen 04ffb4fb42 Fixed incorrectly merged changes in LocalDatabase 2025-06-02 09:16:25 +02:00
Carl Johnsen ee40767412 Merge branch 'master' into performance/mssqlite-async 2025-05-27 12:04:50 +02:00
Kenneth Skovhede 721e497e69 Fixed nullability warnings 2025-05-23 11:46:37 +02:00
Carl Johnsen d27dec0a2f Updated methods to use the instance ReusableTransacition instead of starting a new one 2025-05-23 08:26:06 +02:00
Carl Johnsen abc7c79841 Dispose made infinite recursion between different class derivations 2025-05-23 08:20:00 +02:00
Carl Johnsen afa468377b Fixed typo 2025-05-22 15:28:46 +02:00
Carl Johnsen 6c7e67dd28 Post master merge fixes 2025-05-22 14:35:15 +02:00
Carl Johnsen a37f0dda31 Merge branch 'master' into performance/mssqlite-async 2025-05-22 14:09:17 +02:00
Carl Johnsen 22550be73c SQLite parameters are case sensitive. 2025-05-22 13:34:29 +02:00
Carl Johnsen c5248e007f Construction chain of databases wrongfully tried to start multiple transactions 2025-05-22 13:33:10 +02:00
Carl Johnsen 2cd1692532 Temporary fix to distinguish between new and legacy extension method 2025-05-22 13:25:42 +02:00
Carl Johnsen afddb93e5d Async method wasn't awaited 2025-05-22 08:26:32 +02:00
Carl Johnsen f8f0fd39af Removed comments 2025-05-22 08:03:32 +02:00
Carl Johnsen 9c0f2ca980 LocalDatabase.Dispose() wasn't calling the database correctly with the ReusableTransaction 2025-05-22 08:01:45 +02:00
Carl Johnsen 2c408d795f LocalDatabase always starts a new ReusableTransaction 2025-05-22 08:01:16 +02:00
Carl Johnsen 58fc35e9fd Changed LocalDatabase.GetFilesetIDs to return an async enumerable, rather than a task containing an enumerable. 2025-05-21 15:56:59 +02:00
Carl Johnsen edf1d93f56 Removed transactions as arguments as part of the transition to implicit transactions 2025-05-21 10:08:06 +02:00
Carl Johnsen d11b4e58e7 Reworked the factory construction chains to forward an instantiated object where applicable 2025-05-21 07:24:36 +02:00
Carl Johnsen 4ca147d0f1 More preliminary work towards implicit reusable transaction 2025-05-20 16:27:07 +02:00
Kenneth Skovhede 32646eb159 Added fix for handling rename failures with filesets.
Fixed an issue with the test not counting number of uploads correctly.
2025-05-20 15:22:13 +02:00
Carl Johnsen 9c4eb5a222 FilteredFilenameTable.CreateAsync wasn't static 2025-05-20 08:26:32 +02:00
Carl Johnsen 3e3a9b5aa9 More SQL query restructuring 2025-05-20 06:07:45 +02:00
Carl Johnsen 88db9676b4 Restructured SQL queries in LocalDeleteDatabase and made everything async where applicable 2025-05-19 21:51:28 +02:00
Carl Johnsen f3f00faf8e Incorrectly called the synchronous version of a function 2025-05-19 15:45:31 +02:00
Carl Johnsen 973ba1ad9c Preliminary work on implicit (from an external view) transactions 2025-05-19 14:40:28 +02:00
Carl Johnsen ae12d63468 Changed TemporaryDbValueList to use factory construction and to be proper async. 2025-05-19 14:27:01 +02:00
Carl Johnsen 2dabf56c82 Additional SQL query whitespaces 2025-05-19 10:46:50 +02:00
Carl Johnsen cb4e9eb657 Made the LocalDatabase constructor protected to ensure that derived classes won't call the obsolete warning throwing constructor. 2025-05-19 06:40:18 +02:00