summaryrefslogtreecommitdiffstats
path: root/common/store.cpp
Commit message (Collapse)AuthorAge
* Implement Overlap queriesRémi Nicole2018-06-19
| | | | | | | | | | | | | | | | | | | | Summary: Notes: - Introduces the concept of queries on multiple properties (which meant changing query's internals a bit) - Dates are stored as well as the "reference" in the index to allow quick filtering without fetching the whole entity - Buckets are weeks starting on Monday (guaranteed by the use of the Julian calendar) - Some size improvements are definitely possible (dates are padded numbers again, not using integer databases, Julian calendar starts at a very old date, etc.) Test Plan: Tested in querytest Reviewers: cmollekopf Reviewed By: cmollekopf Tags: #sink Differential Revision: https://phabricator.kde.org/D13477
* Migrate from sink.dav to sink.carddavChristian Mollekopf2018-03-29
|
* Fixed new warningsChristian Mollekopf2018-03-25
|
* Fixed and tested the upgrade from a database without version.Christian Mollekopf2018-02-28
|
* Apply modifications to aggregate valuesChristian Mollekopf2018-02-21
|
* If we have no store available, we also have no upgrade to execute.Christian Mollekopf2018-02-19
|
* Return feedback on wether an upgrade has happened or not.Christian Mollekopf2018-02-11
|
* Removed all traces of BLOB propertiesChristian Mollekopf2018-02-06
|
* One central place to generate uidsChristian Mollekopf2018-01-30
|
* Support for storage upgradesChristian Mollekopf2018-01-30
|
* No parent queryChristian Mollekopf2018-01-02
|
* Ensure the copied enum matchesChristian Mollekopf2017-08-22
|
* Empty resource id's are valid when we search for resources.Christian Mollekopf2017-07-27
|
* Skip modifications that do nothing.Christian Mollekopf2017-07-27
| | | | | | This allows us to i.e. blindly mark mails as read in kube, with the modification automatically being dropped if it doesn't do anything useful.
* Sanity check queriesChristian Mollekopf2017-07-16
|
* Filter resources for syncing by type.Christian Mollekopf2017-07-16
| | | | | Otherwise we end up sending sync requests for contacts to imap resources.
* No more SINK_DEBUG_AREAChristian Mollekopf2017-05-12
|
* Upgrade job that we can eventually use to upgrade the storageChristian Mollekopf2017-05-11
|
* CleanupChristian Mollekopf2017-03-28
|
* Fixed notification queringChristian Mollekopf2017-03-26
|
* Always request properties we use and in turn avoid getting errorsChristian Mollekopf2017-03-14
| | | | | ...by setting dummy values for properties we do not actually have set in the config.
* Debug outputChristian Mollekopf2017-03-14
|
* Filter resources by the types they support.Christian Mollekopf2017-03-01
| | | | | This avoid uselessly querying resources only to discover that they don't have a facade for the type.
* Fixed multimodificationsChristian Mollekopf2017-02-16
|
* DebugoutputChristian Mollekopf2017-02-13
|
* syncThen is no longer necessaryChristian Mollekopf2017-01-12
|
* Modifications for multiple entities.Christian Mollekopf2017-01-12
| | | | This allows to apply a modification to all entities matching some query.
* Debug outputChristian Mollekopf2017-01-12
|
* Debug outputChristian Mollekopf2017-01-10
|
* Better debug outputChristian Mollekopf2016-12-23
|
* Use the resourcefacade to query for resources.Christian Mollekopf2016-12-23
| | | | | | Otherwise we'd have to maintain two query paths, and getResource already broke because we didn't retrieve the capabilities.
* More Log::ContextChristian Mollekopf2016-12-22
|
* Introduced Log::ContextChristian Mollekopf2016-12-22
| | | | | | | To have hierarchical debug output we have to pass around something at run-time, there is no reasonable alternative. Log::Context provides the identifier to do just that and largely replaces the debug component idea.
* Report when we don't have any more to fetch.Christian Mollekopf2016-12-20
| | | | ... so we can use that information in fetchMore.
* Let the preprocessor repeat the types.Christian Mollekopf2016-12-08
|
* Fix copy constructor of SyncScopeChristian Mollekopf2016-12-06
| | | | | We used to loose the resource list and thus erroneously sync all available resources.
* Debug outputChristian Mollekopf2016-12-06
|
* Copy command and proper moveChristian Mollekopf2016-12-04
|
* interresource moveChristian Mollekopf2016-12-02
|
* CleanupChristian Mollekopf2016-11-29
|
* Added the flush command.Christian Mollekopf2016-11-25
| | | | | | | Instead of trying to actually flush queues, we send a special command through the same queues as the other commands and can thus guarantee that the respective commands have been processed without blocking anything.
* Never remove the static facades.Christian Mollekopf2016-11-22
| | | | This fixes the clientapitest.
* sinksh list identity supportChristian Mollekopf2016-11-21
|
* Implement debug stream operators for query.Christian Mollekopf2016-11-07
|
* User querybaseChristian Mollekopf2016-11-04
|
* Don't expose the live query flag directly.Christian Mollekopf2016-11-04
|
* Error propagation works in kasync now.Christian Mollekopf2016-11-04
|
* Refactor how the storage is used.Christian Mollekopf2016-10-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the initial refactoring to improve how we deal with the storage. It does a couple of things: * Rename Sink::Storage to Sink::Storage::DataStore to free up the Sink::Storage namespace * Introduce a Sink::ResourceContext to have a single object that can be passed around containing everything that is necessary to operate on a resource. This is a lot better than the multiple separate parameters that we used to pass around all over the place, while still allowing for dependency injection for tests. * Tie storage access together using the new EntityStore that directly works with ApplicationDomainTypes. This gives us a central place where main storage, indexes and buffer adaptors are tied together, which will also give us a place to implement external indexes, such as a fulltextindex using xapian. * Use ApplicationDomainTypes as the default way to pass around entities. Instead of using various ways to pass around entities (buffers, buffer adaptors, ApplicationDomainTypes), only use a single way. The old approach was confusing, and was only done as: * optimization; really shouldn't be necessary and otherwise I'm sure we can find better ways to optimize ApplicationDomainType itself. * a way to account for entities that have multiple buffers, a concept that I no longer deem relevant. While this commit does the bulk of the work to get there, the following commits will refactor more stuff to get things back to normal.
* Revert "Error propagation should work now."Christian Mollekopf2016-10-07
| | | | This reverts commit b7fc5fa09a90ec383b58d846533b2b38ba7c577e.
* Error propagation should work now.Christian Mollekopf2016-10-06
|