summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAge
* Test overlap live queriesoverlapMinijackson2018-06-18
|
* Add overlap queryMinijackson2018-06-11
|
* CleanupChristian Mollekopf2018-05-29
|
* Avoid building tests that link to the resource on windows.Christian Mollekopf2018-05-28
| | | | | Because we'd have to properly export the symbols for the linking on windows to work.
* Cleaned up some unnecessary dependencies.Christian Mollekopf2018-05-28
|
* Implement ranged queriesRémi Nicole2018-05-28
| | | | | | | | | | | | | | | Summary: Notes: - For now, only for QDateTime indexes - Invalid QDateTimes are stored in the index (subject to change) - Should be a drop-in replacement from ValueIndexes (except for `In` and `Contains` queries) Reviewers: cmollekopf Tags: #sink Differential Revision: https://phabricator.kde.org/D13105
* Add findAllInRange function in the storage layerRémi Nicole2018-05-24
| | | | | | | | | | | | | | | | | Summary: In preparation of the support for ranged queries. Notes: Since they are pretty similar, it could be nice to refactor `scan` and `findAllInRange` to use common 3rd function Test Plan: This is tested in storagetest.cpp Reviewers: cmollekopf Tags: #sink Differential Revision: https://phabricator.kde.org/D13066
* CleanupChristian Mollekopf2018-05-23
|
* Fixed use of mdb_dbi_openChristian Mollekopf2018-05-23
| | | | | | | | | | | | | | | | | | | | There can only ever be one transaction using mdb_dbi_open running, and that transaction must commit or abort before any other transaction attempts to use mdb_dbi_open. Use delayed dbi merging with write transactions and a temporary transaction for read transactions. We now protect dbi initialization with a mutex and immediately update the sDbis hash. This assumes that the created dbis are indeed We can still violate the only one transaction may use mdb_dbi_open rule if we start a read-only transaction after the write transaction, before the write transaction commits. It does not seem to be something we actually do though. Opening dbis on environment init is further separated out, so we don't end up in the regular openDatabase codepath at all.
* Use VERIFYEXECChristian Mollekopf2018-05-20
|
* Get ctest to find the executable on windowsChristian Mollekopf2018-05-19
|
* Exports for windowsChristian Mollekopf2018-05-19
|
* the right target for generate_export_header.Christian Mollekopf2018-05-19
|
* Moved the bogus message test to the imap test.Christian Mollekopf2018-05-18
| | | | Maildir will happly store anything.
* Test what happens if we add a bogus message to the imap resource.Christian Mollekopf2018-05-18
| | | | This test currently fails because we fail to recover.
* Fixed a readEntity call with empty uidChristian Mollekopf2018-05-17
| | | | | | Filtered entites are still passed through as removal, but if there is no other value for the reduction, the reduction result is empty.
* Restrict the query to the relevant resourceChristian Mollekopf2018-05-14
|
* Filter by senderChristian Mollekopf2018-05-07
|
* Export from sink_test so we can link against it on windowsChristian Mollekopf2018-04-20
|
* More exportsChristian Mollekopf2018-04-20
|
* Windows compatChristian Mollekopf2018-04-19
|
* Change most of Event's properties to extracted propertiesRémi Nicole2018-04-13
| | | | | | | | | | | | | | Summary: Fix T8485 Reviewers: cmollekopf Reviewed By: cmollekopf Tags: #sink Maniphest Tasks: T8485 Differential Revision: https://phabricator.kde.org/D12106
* Use the Dummy instead of Event in the benchmark to restore theChristian Mollekopf2018-04-10
| | | | attachment.
* Avoid missing revision updates while a query is running.Christian Mollekopf2018-04-01
| | | | | Instead we have to remember that something has changed and rerun an incremental query.
* Fixed unusedChristian Mollekopf2018-03-28
|
* Add CalDAV supportRémi Nicole2018-03-27
| | | | | | | | | | | | | | | | | | | | | Summary: Notes: - Add a `webdavcommon` folder for WebDAV generic resource code - Move `davresource` to `carddaveresource` and make it use the WebDAV code - For now it tests the CalDAV resource directly on KolabNow (to be changed) - Only synchronization, not adding / changing / removing WebDAV collections or items (to be implemented) - Only events are currently supported (todo, freebusy, etc. are to be implemented but should be straightforward) Fixes T8224 Reviewers: cmollekopf Tags: #sink Maniphest Tasks: T8224 Differential Revision: https://phabricator.kde.org/D11741
* Make sure we initialize the environment correctly and only set the db ↵Christian Mollekopf2018-03-26
| | | | version when creating it
* Skip crashing testChristian Mollekopf2018-03-26
|
* Fixed more warnings and then disabled themChristian Mollekopf2018-03-25
| | | | ..because there is a boatload more to fix.
* A more stable flagChangeTestChristian Mollekopf2018-03-02
|
* Fixed and tested the upgrade from a database without version.Christian Mollekopf2018-02-28
|
* Properly deal with filtered entities in reduced queries.Christian Mollekopf2018-02-22
| | | | Filtered entities would still end up in the entities list before.
* Deal with removals in reduced queriesChristian Mollekopf2018-02-22
|
* Apply modifications to aggregate valuesChristian Mollekopf2018-02-21
|
* Xapian based fulltext indexingChristian Mollekopf2018-02-11
| | | | | This cuts into the sync performance by about 40%, but gives us fast fulltext searching for all local content.
* Store all BLOB properties inline.Christian Mollekopf2018-02-06
| | | | | | | | | | | | | | | | | | | | | BLOB properties had a couple of intended purposes: * Allow large payloads to be streamed directly to disk, and then be handled by reference. * Allow zero-copy handling. * Keep the database values compact so we can avoid traversing large BLOBS. However, they came at the cost of code-complexity, and we lost all the benefits of our storage layer, such as transactions. Measurements showed, that for email (the intended primary usecase), the overhead is hardly measurable, with most parts performing better, or at least not worse. We additionally also gain file-system independence, which may help on other platforms. The biggest drawback is probably that large payloads need to be written to disk twice, because of the synchronizer queue (once for the queue, once for the actual data).
* CleanupChristian Mollekopf2018-01-24
|
* Track uidvalidity to detect changes behind our back.Christian Mollekopf2018-01-23
|
* Fixed imap testsChristian Mollekopf2018-01-23
| | | | | Adding the mail to cyrus imap somehow broke with cyrus 3.0. We're now creating the mail instead, before trying to sync it.
* We need all parents available, not only oneChristian Mollekopf2018-01-03
|
* Use read-write locks for finer grained control to sDbi and sEnvironmentsChristian Mollekopf2018-01-03
| | | | | | | | | | There are only a few cases where have to access the list of dbis or environments, so we can normally get away with just read-locking. This seems to fix a segfault that was possibly caused be an environment being reused that has already been freed in another thread. The read-only lock when initially retrieving the environment seems to fix that.
* Demonstrate the problem with child indexes entering before parentChristian Mollekopf2018-01-03
| | | | indexes
* Add a working model signal testChristian Mollekopf2018-01-03
|
* Avoid messageId related warningsChristian Mollekopf2018-01-03
|
* Removed broken testsChristian Mollekopf2018-01-03
|
* Removed unused synclistresultChristian Mollekopf2018-01-02
|
* No parent queryChristian Mollekopf2018-01-02
|
* Fixed removal of entityChristian Mollekopf2017-12-29
|
* CleanupChristian Mollekopf2017-12-28
|
* Fixed incremental updates in folder queriesChristian Mollekopf2017-12-28
| | | | | | | | | Incremental additions of children in the tree were filtered due to the parent filter. This broke when we started to maintain state, thus causing the filter in datastorequery containing the parent filter to be carried over. Given that the incremental querying of children currently doesn't really add much value (we don't have trees that are large/deep enough), perhaps we're better off using a different approach.