This release is a pre-release and may not be stable for production use.
REANA DB
About
REANA-DB is a component of the REANA reusable analysis platform. It contains REANA database models and utilities.
Features
- database persistence for REANA system
- database models and utilities
- database upgrades and migrations
Usage
The detailed information on how to install and use REANA can be found in docs.reana.io.
Useful links
- REANA project home page
- REANA user documentation
- REANA user support forum
- REANA-DB releases
- REANA-DB developer documentation
- REANA-DB known issues
- REANA-DB source code
Changelog
0.9.5 (2024-11-26)
Features
Continuous integration
0.9.4 (2024-03-01)
Code refactoring
Code style
Continuous integration
- commitlint: addition of commit message linter (#218) (ee0f7e5)
- commitlint: allow release commit style (#229) (adf15d7)
- commitlint: check for the presence of concrete PR number (#223) (3d513f6)
- pytest: move to PostgreSQL 14.10 (#226) (4dac889)
- release-please: initial configuration (#218) (7c616d6)
- shellcheck: fix exit code propagation (#223) (b62ee1e)
Documentation
0.9.3 (2023-12-01)
- Changes the
Workflowtable to replace therun_numbercolumn with two new columnsrun_number_majorandrun_number_minorin order to allow for more than nine restarts of user workflows. - Changes the names of database table, column, index and key constraints in order to follow the SQLAlchemy upstream naming conventions everywhere.
- Changes several database index definitions in order to improve performance of most common database queries.
0.9.2 (2023-09-26)
- Adds progress meter to the logs of the periodic quota updater.
- Changes CPU and disk quota calculations to improve the performance of periodic quota updater.
- Fixes the workflow priority calculation to avoid workflows stuck in the
queuedstatus when the number of allowed concurrent workflow is set to zero.
0.9.1 (2023-01-18)
- Changes to PostgreSQL 12.13.
- Fixes conversion of possibly-negative resource usage values to human-readable formats.
- Fixes disk quota updater to prevent setting negative disk quota usage values.
- Fixes quota updater to reduce memory usage.
0.9.0 (2022-12-13)
- Adds new
launcher_urlcolumn to theWorkflowtable to store the remote origin of workflows submitted via the Launch-on-REANA functionality. - Adds the possibility to force resource quota updates irrespective of globally-configured quota update policy.
- Adds new
WorkspaceRetentionRuletable to store workspace file retention rules. - Adds new
WorkspaceRetentionAuditLogtable to store the audit log of workspace file retention rule updates. - Changes percentage ranges used to calculate the health status of user resource quota usage.
- Changes to PostgreSQL 12.10.
- Fixes wrong numbering of restarted workflows by limiting the number of times a workflow can be restarted to nine.
- Fixes
Workflow.get_workspace_disk_usageto always calculate disk usage rather than relying on the quota usage values from the database, since these may not be up-to-date depending on the global quota update policy. - Fixes helper function that retrieves workflows by UUID to also additionally check that the provided user is the owner of the workflow.
0.8.2 (2022-02-23)
- Adds transition for workflow from queued to failed status.
0.8.1 (2022-02-01)
- Adds an option to periodically calculate CPU quota usage.
- Changes CLI quota command from
disk-usage-updatetoresource-usage-updatesince it can also perform CPU quota calculation. - Fixes quota update functions to handle exceptional situation as continuable errors.
- Removes extra
QuotaResourceTypeenum in favor ofResourceType.name.
0.8.0 (2021-11-22)
- Adds new disk usage retrieval methods using canonical (bytes) and human-readable (KiB) units. (
User,Workflow) - Adds Quota models which calculates CPU and disk usage.
- Adds
InteractiveSessionmodel. - Adds new properties
started_atandfinished_atto theJobmodel, updated on status change. - Adds
get_priorityworkflow method, that combines both complexity and concurrency, to pass to the scheduler. - Adds a possibility to configure database connection pool parameters via environment variables.
- Adds new
pendingstate toRunStatustable. - Adds workflow complexity property in
Workflowtable. - Adds environment variable to configure which quotas to update.
- Changes
WorkflowStatustable toRunStatus. - Changes disk quota calculation functions to allow passing raw bytes to increase the used quota.
- Changes to PostgreSQL 12.8.
- Removes support for Python 2.
0.7.3 (2021-03-17)
- Fixes REANA installation by pinning SQLAlchemy version less than 1.4.0 due to https://github.com/kvesteri/sqlalchemy-utils/issues/505.
0.7.2 (2021-02-22)
- Adds utility to status enums to decide whether to clean workflows and jobs depending on their status.
0.7.1 (2021-02-02)
- Adds support for Python 3.9.
- Fixes minor code warnings.
- Changes CI system to include Python flake8 checker.
0.7.0 (2020-10-20)
- Adds initial central workflow status transition logic handler.
- Adds new audit table and logic to register actions. (
AuditLog,AuditLogAction) - Adds fixtures for better testing of database models.
- Changes user token storage to move tokens from
Usertable toUserTokentable and to encrypt them. - Changes
Workflowtable to add a newworkspace_pathcolumn. - Changes default database service to use centrally configured one from REANA-Commons. (
REANA_INFRASTRUCTURE_COMPONENTS_HOSTNAMES) - Changes code formatting to respect
blackcoding style. - Changes documentation to single-page layout.
0.6.0 (2019-12-19)
- Adds new method which returns full workflow name.
- Adds more granular DB configuration.
- Adds Git repository information to the workflow model.
(
Workflow.git_repo,Workflow.git_provider) - Adds user name information to the user model.
(
User.full_name,User.username) - Removes restart count information from the job model.
(
Job.restart_count,Job.max_restart_count) - Adds support for Python 3.8.
0.5.0 (2019-04-16)
- Introduces new workflow statuses:
deleted,stopped,queued. - Adds new field to store workflow stopping time. (
Workflow.run_stopped_at) - Moves workflow input parameters to its own column to separate them from
operational options. Adapts getters accordingly.
(
Workflow.input_parameters) - Adds new method to retrieve the workflow owner's token.
(
Workflow.get_owner_access_token) - Introduces new utility function to retrieve workflows by
uuidor name. (_get_workflow_with_uuid_or_name) - Introduces new fields for interactive sessions:
interactive_session,interactive_session_nameandinteractive_session_type. Note that with current design only one interactive session per workflow is supported. - Adds a new enumeration for possible job statuses. (
JobStatus) - Adds new field to identify jobs in the underlying compute backend.
(
Job.backend_job_id)
0.4.0 (2018-11-06)
- Stores
reana.yamlin database models. - Adds Workflow specification and parameter getters.
- Adds support for Python 3.7.
- Changes license to MIT.
0.3.0 (2018-08-10)
- This package is a result of refactoring reana-commons.
- Provides common REANA models.
- Provides database connection logic.
Metadata
Release files for reana-db 0.95.0a14
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| reana_db-0.95.0a14.tar.gz | 87.8 kB | Without provenance | Details for reana_db-0.95.0a14.tar.gz |
Release files / reana_db-0.95.0a14.tar.gz
| Download URL | reana_db-0.95.0a14.tar.gz |
|---|---|
| Size | 87.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
23828a8d1cde5fc11dd606c51ebb8d8c4d49fb36036157c85b2f6465b77c7e30
|
|
BLAKE2b-256 checksum How to use checksums |
c7856ca318c156da235df000f2d2ba8a63d9145c18e62021c3487ba323a7a441
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.11
|
Security for reana-db 0.95.0a14
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.