summaryrefslogtreecommitdiffstats
path: root/common/storage.h
Commit message (Collapse)AuthorAge
* Fix "contains" function + write tests for contains and existsseparate-uidMinijackson2018-08-22
|
* Fix readRevisions function, fixes pipelinetestMinijackson2018-08-22
|
* resultHandler take size_t as argument for involved storage functionsMinijackson2018-08-21
|
* Separate UIDs and revisionsMinijackson2018-08-21
|
* New Key API in storage layerRémi Nicole2018-07-27
| | | | | | | | | | | | | | | | | Summary: - Use object oriented paradigm for Keys / Identifiers /Revisions - "Compress" keys by using byte representation of Uuids - Still some cleaning left to do - Also run some benchmarks - I'm questioning whether files other than entitystore (tests excluded) are allowed to access this API Reviewers: cmollekopf Reviewed By: cmollekopf Tags: #sink Differential Revision: https://phabricator.kde.org/D13735
* 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
* Fixed a bunch of exportsChristian Mollekopf2018-04-20
|
* Make sure we initialize the environment correctly and only set the db ↵Christian Mollekopf2018-03-26
| | | | version when creating it
* Optional printing of transaction spanChristian Mollekopf2018-01-30
|
* Support for storage upgradesChristian Mollekopf2018-01-30
|
* Storage debugging codeChristian Mollekopf2017-11-21
|
* Fixed getUids by type filtering.Christian Mollekopf2017-09-07
| | | | | We used to simply return all uids. Requires "sinksh upgrade"
* A stab at the undefined reference to QMap<QByteArray, int>::QMap() errorChristian Mollekopf2017-06-06
| | | | ...that I only get on copr and nowhere else.
* Export DbLayoutChristian Mollekopf2017-05-08
|
* A defined table layoutChristian Mollekopf2017-05-06
|
* CleanupChristian Mollekopf2017-05-04
|
* Added uid indexChristian Mollekopf2017-04-10
|
* CleanupChristian Mollekopf2017-03-28
|
* SINK_EXPORT for free functions needs to go to the beginningChristian Mollekopf2017-01-26
|
* Fixed build issues with pedantic enabledChristian Mollekopf2017-01-12
|
* Debug outputChristian Mollekopf2017-01-07
|
* 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.
* Fixed a bunch of memory leaks.Christian Mollekopf2016-07-06
| | | | Found with valgrind
* A central place to generate uuid'sChristian Mollekopf2016-06-05
|
* Skip internal keys by default while scanning.Christian Mollekopf2016-06-05
|
* A way to retrieve the last revision during changereplay.Christian Mollekopf2016-06-03
|
* Detect and recover from invalid database environment.Christian Mollekopf2016-05-30
| | | | | | Sometimes wrong databases are returned for the name, probably related to threading/incorrect usage of lmdb. For the time being we recover from that by detecting it and retrying.
* Fixed genericresource so it works with the maildirresourcetestChristian Mollekopf2016-05-29
|
* Fromatted the whole codebase with clang-format.Christian Mollekopf2016-03-03
| | | | clang-format -i */**{.cpp,.h}
* Sequential keys go badly with findLatestChristian Mollekopf2016-02-12
|
* Use Sink instead of SinkCommonChristian Mollekopf2016-02-09
|
* Executed database removal in the resource instead of the client.Christian Mollekopf2016-02-08
| | | | | The resource doesn't really notify all clients properly about the removal, but the tests all still pass.
* Centralized main database nameChristian Mollekopf2016-02-01
|
* Insall sincommon_export.hChristian Mollekopf2016-01-31
|
* Renamed Akonadi2 to SinkChristian Mollekopf2016-01-20
| | | | (except for documentation).
* Detect modifications and removals on folders in the maildirresourceChristian Mollekopf2015-12-18
|
* Added a way to gather some db statistics.Christian Mollekopf2015-12-15
|
* Updated the index on modifications and removals.Christian Mollekopf2015-10-29
| | | | Misses tests.
* Cleanup revisions with a delayChristian Mollekopf2015-10-12
|
* Revision cleanupChristian Mollekopf2015-09-29
|
* Storage: substring search and findLatestChristian Mollekopf2015-09-11
|
* Removed no longer used APIChristian Mollekopf2015-08-26
|
* Removed convenience APIChristian Mollekopf2015-08-23
|
* Storage cleanupChristian Mollekopf2015-08-23
|
* Duplicate settings as part of opening db.Christian Mollekopf2015-08-23
|
* Use named databases in storage.Christian Mollekopf2015-08-22
| | | | This will allow us to create indexes in the same store.
* Make transactions testable as booleanChristian Mollekopf2015-08-18
|
* Autocommit for the transactionChristian Mollekopf2015-08-13
|
* Removed legacy APIChristian Mollekopf2015-08-11
|
* Default errorhandler like everywhere elseChristian Mollekopf2015-08-11
|