summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
...
* Aggregation only becomes relevant when >1Christian Mollekopf2018-02-22
|
* Deal with removals in reduced queriesChristian Mollekopf2018-02-22
|
* Print aggregate idsChristian Mollekopf2018-02-21
|
* Fixed modificationsChristian Mollekopf2018-02-21
|
* Apply modifications to aggregate valuesChristian Mollekopf2018-02-21
|
* Remember aggregated idsChristian Mollekopf2018-02-21
|
* Support reductions in the list commandChristian Mollekopf2018-02-21
|
* Catch xapian exceptionsChristian Mollekopf2018-02-21
|
* Try to load a resource as selftestChristian Mollekopf2018-02-19
|
* Print the resource lookup directories in sinksh infoChristian Mollekopf2018-02-19
|
* If we have no store available, we also have no upgrade to execute.Christian Mollekopf2018-02-19
|
* Updated sink.specChristian Mollekopf2018-02-19
|
* Fixed crashes due to concurrently running queries.Christian Mollekopf2018-02-15
| | | | | | | | | | | | | | | | | | | | | | | | A single QueryRunner should never have multiple workers running at the same time. We did not properly enforce this in case of incremental updates coming in. The only way I managed to reproduce the crash: * Open a large folder with lots of unread mail in kube * Select a mail in the maillist and hold the down button * This will: * Repeatedly call fetch more * Trigger lot's of mark as read modifications that result in notifications. * Eventually it crashes somewhere in EntityStore, likely because of concurrent access of the filter structure which is shared through the state. We now ensure in the single threaded portion of the code that we only ever run one worker at a time. If we did receive an update during, we remember that change and fetch more once we're done. To be able to call fetch again that portion was also factored out into a separate function.
* Enable partial matchingChristian Mollekopf2018-02-13
|
* sinksh list: limit and sort supportChristian Mollekopf2018-02-13
|
* Improved debug messagesChristian Mollekopf2018-02-13
|
* A sinksh module geared towards self-testing and stress testing.Christian Mollekopf2018-02-13
|
* Fixed date parsingChristian Mollekopf2018-02-13
|
* Fulltext filter for sinkshChristian Mollekopf2018-02-13
|
* Report fulltext index sizeChristian Mollekopf2018-02-13
|
* Added some fulltext index inspectionChristian Mollekopf2018-02-13
|
* 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.
* Return feedback on wether an upgrade has happened or not.Christian Mollekopf2018-02-11
|
* Support storage downgrading as wellChristian Mollekopf2018-02-11
|
* Fixed new cmake warningChristian Mollekopf2018-02-07
|
* Fixed warningChristian Mollekopf2018-02-07
|
* Removed all traces of BLOB propertiesChristian Mollekopf2018-02-06
|
* 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).
* Dump some process stats on exit in the synchronizer.Christian Mollekopf2018-02-05
|
* Check the right portChristian Mollekopf2018-02-01
|
* Removed unusedChristian Mollekopf2018-01-31
|
* Fixed buildChristian Mollekopf2018-01-31
|
* HAWD definitions for imapmailsyncbenchmarkChristian Mollekopf2018-01-31
|
* Limit number of characters we printChristian Mollekopf2018-01-30
|
* Improved sinksh stat outputChristian Mollekopf2018-01-30
|
* Optional printing of transaction spanChristian Mollekopf2018-01-30
|
* Less hardcoded numbersChristian Mollekopf2018-01-30
|
* sinksh improvementsChristian Mollekopf2018-01-30
|
* One central place to generate uidsChristian Mollekopf2018-01-30
|
* Parse uidsChristian Mollekopf2018-01-30
|
* Inspect outputChristian Mollekopf2018-01-30
|
* Include synchronization store in diskUsage calculationChristian Mollekopf2018-01-30
|
* More details in sinksh stat outputChristian Mollekopf2018-01-30
|
* Support for storage upgradesChristian Mollekopf2018-01-30
|
* Translate dav errorsChristian Mollekopf2018-01-29
|
* Support UUID's without curly bracesChristian Mollekopf2018-01-29
|
* Fixed imapmailsynctestChristian Mollekopf2018-01-28
|
* We don't normally have to see the capabilitiesChristian Mollekopf2018-01-26
|
* Linebreak after each resourceChristian Mollekopf2018-01-26
|
* Do the logging in the resource code.Christian Mollekopf2018-01-25
|