Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Draft of inspection API | Christian Mollekopf | 2016-01-18 |
| | |||
* | Test markMailAsRead with all the new KAsync::Job stuff | Christian Mollekopf | 2016-01-15 |
| | |||
* | Got rid of all uses of Query::syncOnDemand and Query::processAll | Christian Mollekopf | 2016-01-14 |
| | |||
* | Ported a first test to the new API | Christian Mollekopf | 2016-01-14 |
| | | | | This also requires a new KAsync version | ||
* | An imperative query API | Christian Mollekopf | 2016-01-14 |
| | |||
* | Ensure that we only emit ChildrenFetched once. | Christian Mollekopf | 2016-01-14 |
| | | | | ...Once all resource are done, and not only one. | ||
* | Test for maildir mail removal | Christian Mollekopf | 2015-12-31 |
| | |||
* | Reset the maildir after every test | Christian Mollekopf | 2015-12-31 |
| | |||
* | Stub for mail change-replay. | Christian Mollekopf | 2015-12-29 |
| | | | | Not usable yet. | ||
* | Mark commands with whether they need to be replayed | Christian Mollekopf | 2015-12-29 |
| | | | | | This way we don't have to try to figure out whether a change is coming from the source already. | ||
* | Changereplay for maildir folders. | Christian Mollekopf | 2015-12-28 |
| | | | | | The sync and changereplay can not run at the same time, or would have to share the transaction otherwise. | ||
* | Threaded query runner implementation | Christian Mollekopf | 2015-12-27 |
| | | | | | | | | | All database access is now implemented in threads, to avoid blocking the main thread. The resource communication still resides in the main thread to keep the coordination simple. With it comes a test that ensures we don't block the main thread for too long. | ||
* | Print free page info in benchmark. | Christian Mollekopf | 2015-12-26 |
| | | | | | | | LMDB seems to amass quite some free pages that are not reused, resulting in a rather poor usage of the space available. I haven't figured out why that is so far (it doesn't seem to be due to open transactions). | ||
* | Use the folder index for syncing mails. | Christian Mollekopf | 2015-12-22 |
| | | | | | | If we iterate over all mails, all mails that are not in the current folder will not be existing in exists(). If we use the index instead to only get to the mails we need we're in a better situation. | ||
* | Avoid using QDir::separator | Christian Mollekopf | 2015-12-22 |
| | | | | | It really doesn't help us in assembling paths since qt deals with forward slashes just fine | ||
* | Added the mail date property | Christian Mollekopf | 2015-12-22 |
| | |||
* | A benchmark for resource writing memory usage | Christian Mollekopf | 2015-12-22 |
| | |||
* | Expect what we can rely on | Christian Mollekopf | 2015-12-22 |
| | |||
* | Only load the properties we need. | Christian Mollekopf | 2015-12-22 |
| | | | | ...and adjust the test accordingly with what we expect. | ||
* | An automated test that keeps memory usage in check. | Christian Mollekopf | 2015-12-22 |
| | | | | And ensures we scale linearly with the number of entities. | ||
* | Generalized the sync algorithms and applied them to mail. | Christian Mollekopf | 2015-12-20 |
| | | | | | Not necessarily the smartest algorithms, but at least they work and are generally applicable. | ||
* | Fixed clientapitest | Christian Mollekopf | 2015-12-19 |
| | |||
* | Detect modifications and removals on folders in the maildirresource | Christian Mollekopf | 2015-12-18 |
| | |||
* | Make queries by id work | Christian Mollekopf | 2015-12-17 |
| | |||
* | Fixed maildirresourcetest | Christian Mollekopf | 2015-12-17 |
| | |||
* | This is how we can look at the memory layout | Christian Mollekopf | 2015-12-17 |
| | |||
* | All mails must have a different identifier. | Christian Mollekopf | 2015-12-16 |
| | |||
* | Get the maildir resource to work. | Christian Mollekopf | 2015-12-16 |
| | | | | | The subfolder implementation is not according to any standard it seems, but at least it works for now. | ||
* | A read-only maildir resource. | Christian Mollekopf | 2015-12-15 |
| | | | | Respectively a first prototype thereof. | ||
* | Ensure we process the query also if no resource is available. | Christian Mollekopf | 2015-12-13 |
| | |||
* | Load entities from multiple resources | Christian Mollekopf | 2015-12-13 |
| | |||
* | Mail by folder query test | Christian Mollekopf | 2015-12-10 |
| | |||
* | Deal with no available resources | Christian Mollekopf | 2015-12-10 |
| | |||
* | Added resource disk usage | Christian Mollekopf | 2015-12-10 |
| | |||
* | Use Akonadi2::Store::ChildrenFetchedRole | Christian Mollekopf | 2015-12-06 |
| | |||
* | Added TypeIndex | Christian Mollekopf | 2015-12-06 |
| | | | | | A central location for all types to specify what properties are indexed, and how to query them. | ||
* | Improved resource access caching | Christian Mollekopf | 2015-12-03 |
| | | | | | | | | * Smarter caching. ResourceAccess instances close after a timeout, if not reused. * Introduced a start command to avoid race condition when sending commands to a resource that is currently shutting down. * We resend pending commands after we lost access to the resource * unexpectedly. | ||
* | Use hawd for dummyresourcebenchmark | Christian Mollekopf | 2015-12-01 |
| | |||
* | HAWD: Ensure the column order is maintained | Christian Mollekopf | 2015-12-01 |
| | | | | | | | By turning the columns into an array instead of an object, we can print the values in the same order as in the definition file. Previosly the order was random, and even headers and values were somtimes mixed up. | ||
* | Resolve remoteIds during sync | Christian Mollekopf | 2015-12-01 |
| | | | | | | | Remote id's need to be resolved while syncing any references. This is done by the synchronizer by consulting the rid to entity id mapping. If the referenced entity doesn't exist yet we create a local id anyways, that we then need to pick up once the actual entity arrives. | ||
* | Test modifications | Christian Mollekopf | 2015-11-30 |
| | |||
* | Use the ChildrenFetchedRole | Christian Mollekopf | 2015-11-30 |
| | |||
* | Test model signals | Christian Mollekopf | 2015-11-30 |
| | |||
* | Cleanup | Christian Mollekopf | 2015-11-28 |
| | |||
* | Removed most uses of SyncListResult and brought back the | Christian Mollekopf | 2015-11-28 |
| | | | | dummyresourcetest | ||
* | Introduced a QueryRunner object | Christian Mollekopf | 2015-11-27 |
| | | | | | | | | The QueryRunner object lives for the duration of the query (so just for the initial query for non-live queries, and for the lifetime of the result model for live queries). It's supposed to handle all the threading internally and decouple the lifetime of the facade. | ||
* | Use the new model api in the benchmark and split tests up. | Christian Mollekopf | 2015-11-26 |
| | | | | This way it's possible to i.e. repeatedly only run the reading part. | ||
* | Optimize findLast | Christian Mollekopf | 2015-11-25 |
| | | | | | This just gave a 700% boost to query performance from ~2k to 14k reads per second... | ||
* | Use Query::parentProperty to express tree queries | Christian Mollekopf | 2015-11-24 |
| | | | | | That way we don't have to hardcode the parent property, and we can use the property to express non-tree queries as well. | ||
* | Fixed build | Christian Mollekopf | 2015-11-21 |
| |