Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Avoid error while processing messagequeue | Christian Mollekopf | 2015-04-18 |
| | | | | Only process while we have messages available. | ||
* | Log messages | Christian Mollekopf | 2015-04-18 |
| | |||
* | Moved generic part of load to GenericFacade | Christian Mollekopf | 2015-04-18 |
| | |||
* | Renamed the Error log macro to ErrorMsg because of nameclashes | Christian Mollekopf | 2015-04-18 |
| | | | | With Storage::Error. Perhaps turn to akLog, akError, ...? | ||
* | Cleanup in DummyResourceFacade::load | Christian Mollekopf | 2015-04-16 |
| | | | | We avoid capturing resultProvider or queryRunner so they don't live forever. | ||
* | Moved clientapitest to tests | Christian Mollekopf | 2015-04-15 |
| | |||
* | Log storage errors during query. | Christian Mollekopf | 2015-04-15 |
| | |||
* | Colorized debug output a bit | Christian Mollekopf | 2015-04-15 |
| | |||
* | Use a queryrunner to execute queries. | Christian Mollekopf | 2015-04-15 |
| | | | | | | | | | | | | | | The queryrunner is responsible for running queries and keeping them up to date. This is required for self-updating queries. To get this to work properly the ResultProvider/emitter had to be fixed. The emitter now only lives as long as the client holds a reference to it, allowing the provider to detect when it is no longer necessary to keep the query alive (because noone is listening). In the process various lifetime issues have been fixed, that we're caused by lambdas capturing smartpointers, that then extended the lifetime of the associated objects unpredictably. | ||
* | Always queue commands in resourceaccess. | Christian Mollekopf | 2015-04-12 |
| | | | | | We want to keep the command until we know it arrived in the resource, so we can resend it otherwise. | ||
* | Further simplify writing of buffer adaptors. | Christian Mollekopf | 2015-04-12 |
| | | | | Still not quite there but we're avoiding the bulk of duplication by now. | ||
* | Compile with flatbuffers 1.1 | Christian Mollekopf | 2015-04-12 |
| | |||
* | Compile with QT_NO_DEBUG | Christian Mollekopf | 2015-04-12 |
| | |||
* | Merge remote-tracking branch 'origin/develop' into develop | Christian Mollekopf | 2015-04-12 |
|\ | |||
| * | Async: add runtime executor tracing for easier debugging | Dan Vrátil | 2015-04-11 |
| | | |||
| * | Async: use baseclass instead of this-> to refer to parent class member | Dan Vrátil | 2015-04-10 |
| | | |||
| * | Fix build (flatbuffers API changed) | Dan Vrátil | 2015-04-10 |
| | | |||
| * | Async: fix build for real this time | Dan Vrátil | 2015-04-10 |
| | | |||
| * | Async: fix build | Dan Vrátil | 2015-04-10 |
| | | |||
| * | Async: const'ify | Dan Vrátil | 2015-04-06 |
| | | |||
| * | Async: improve error handling and error propagation | Dan Vrátil | 2015-04-06 |
| | | | | | | | | | | | | The error is now propagated to the top-most (user-owned) Future. When an error occurs, no further tasks are executed. The first error handler function in the chain is also called, if there's any. | ||
| * | Async: remove the silly all-tests benchmark | Dan Vrátil | 2015-04-04 |
| | | |||
| * | Async: update components and lifetime documentation | Dan Vrátil | 2015-04-04 |
| | | |||
| * | Async: implement progress reporting through future | Dan Vrátil | 2015-04-04 |
| | | | | | | | | | | | | | | | | | | | | This is a simplified progress reporting, since it does not report progress of ther overcall Job chain, but only of individual tasks, which makes it only really useful on one-task Jobs. TODO: propagate subjob progress to the Future user gets copy of TODO: compound progress reporting (be able to report a progress of the overall Job chain) | ||
| * | Async: move as much Future code as possible from public header to .cpp | Dan Vrátil | 2015-04-04 |
| | | |||
| * | Async: one TODO done, few more to go | Dan Vrátil | 2015-04-04 |
| | | |||
| * | Async: fix crash in Job::nestedJobWrapper | Dan Vrátil | 2015-04-04 |
| | | |||
* | | More generic domainadpator code. | Christian Mollekopf | 2015-04-12 |
| | | | | | | | | | | This should cover read and write for entites that have a 1:1 mapping to the resource buffers. | ||
* | | checkpoint | Christian Mollekopf | 2015-04-10 |
| | | |||
* | | Compile with debug symbols by default for now | Christian Mollekopf | 2015-04-09 |
| | | |||
* | | comments | Christian Mollekopf | 2015-04-09 |
| | | |||
* | | Automatic tests. | Christian Mollekopf | 2015-04-09 |
| | | |||
* | | Only measure appending, not creating the buffer. | Christian Mollekopf | 2015-04-09 |
| | | |||
* | | Moved generic parts of the domain adaptor to common | Christian Mollekopf | 2015-04-09 |
| | | |||
* | | Renamed Akonadi::Domain to Akonadi::ApplicationDomain | Christian Mollekopf | 2015-04-09 |
| | | | | | | | | Because it's really the application domain and not the akonadi domain. | ||
* | | Refactored buffer extraction from vector. | Christian Mollekopf | 2015-04-09 |
| | | |||
* | | Started a facade base implementation. | Christian Mollekopf | 2015-04-09 |
| | | |||
* | | Use QByteArray instead of QString | Christian Mollekopf | 2015-04-09 |
| | | | | | | | | | | All identifiers should be latin1 and we make this explicit by using QByteArray. QString is reserved for strings that can be UTF-8 or alike. | ||
* | | cleanup | Christian Mollekopf | 2015-04-08 |
| | | |||
* | | async simplifications | Christian Mollekopf | 2015-04-08 |
| | | |||
* | | Wait for all queues to drain in processAllMessages. | Christian Mollekopf | 2015-04-08 |
| | | |||
* | | Fixed typo | Christian Mollekopf | 2015-04-08 |
| | | |||
* | | Some more CreateVector => appendAsVector transformations. | Christian Mollekopf | 2015-04-08 |
| | | |||
* | | Less noise | Christian Mollekopf | 2015-04-07 |
| | | |||
* | | Use memcpy to copy tables into vectors. | Christian Mollekopf | 2015-04-07 |
| | | | | | | | | | | | | Ideally we wouldn't be copying at all, and somehow cast the table to a vector. Unfortunately I haven't figured out how to do that, and this solution at least gets us from 0.065 ms to 0.028 ms in testCreateCommand. | ||
* | | Benchmark for in-process writing. | Christian Mollekopf | 2015-04-06 |
|/ | | | | To measure overhead of the communication to the separate process. | ||
* | We have to copy all values anyways, so this transaction is no longer required. | Christian Mollekopf | 2015-04-03 |
| | |||
* | log messages. | Christian Mollekopf | 2015-04-03 |
| | |||
* | Merge remote-tracking branch 'origin/develop' into develop | Christian Mollekopf | 2015-04-03 |
|\ | |||
| * | Async: support (re-)executing single Job multiple times | Dan Vrátil | 2015-04-01 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Storing Future and current Job progress directly in Executors means that we cannot re-execute finished job, or even execute the same Job multiple times in parallel. To do so, we need to make Executors stateless and track the state elsewhere. This change does that by moving the execution state from Executor to Execution class. Executors now only describe the tasks to execute, while Execution holds the current state of execution. New Execution is created every time Job::exec() is called. Execution holds reference to it's result (Future) and Executor which created the Execution. This ensures that Executor is not deleted when Job (which owns Executors) goes out of scope while the execution is still running. At the same time Future holds reference to relevant Execution, so that the Execution is deleted when all copies of Future referring result from the respective Execution are deleted. |