Queue of asynchronous tasks for SENAITE LIMS
This add-on enables asynchronous tasks for SENAITE LIMS, that allows to better handle concurrent actions and processes when the workload is high. Is specially indicated for high-demand instances and for when there are custom processes that take long to complete. Essentially, senaite.queue reduces the chance of transaction commits by handling tasks asynchronously, in an unattended and sequential manner.
Once installed, this add-on enables asynchronous processing of those tasks that usually have a heavier footprint regarding performance, and with highest chance of transaction conflicts:
- Assignment of analyses to worksheets
- Assignment of worksheet template to a worksheet
- Creation of a worksheet by using a worksheet template
- Workflow actions (submit, verify, etc.) for analyses assigned to worksheets
- Recursive permissions assignment on client contacts creation
This add-on neither provides support for workflow transitions/actions at Sample level nor for Sample creation. However, this add-on can be extended easily to match additional requirements.
We want contributing to SENAITE.QUEUE to be fun, enjoyable, and educational for anyone, and everyone. This project adheres to the Contributor Covenant.
By participating, you are expected to uphold this code. Please report unacceptable behavior.
Contributions go far beyond pull requests and commits. Although we love giving you the opportunity to put your stamp on SENAITE.QUEUE, we also are thrilled to receive a variety of other contributions.
Please, read Contributing to senaite.queue document.
If you wish to contribute with translations, check the project site on Transifex.
Feedback and support
SENAITE.QUEUE Copyright (C) 2019-2020 RIDING BYTES & NARALABS
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.