Persistency User Manual#

Persistency User Manual
status: valid
security: NO
safety: QM
tags: persistency
version: 1

Overview#

This manual describes the integration and usage of the Persistency module (Key-Value-Storage, KVS) for application developers. It refers to the sources of the information instead of repeating them: feature feat__persistency with its architecture Persistency KVS Feature Arc... (doc__persistency_kvs_architecture) and component persistency::kvs (comp__persistency_kvs) with its requirements KVS Requirements (doc__kvs_requirements).

Environment Needs#

Supported languages and operating systems: feat_req__persistency__cpp_rust, feat_req__persistency__os_agnostic. Toolchains, Bazel version and target platforms are defined in MODULE.bazel, .bazelversion and .bazelrc.

Dependencies#

Dependencies, versions and licenses are listed in the SBOM generated by the Bazel target //:sbom_product.

Module Configuration Details#

A KVS instance is configured via KvsBuilder (C++ and Rust), see API Reference. The behavior of the component, including its configuration, is specified in KVS Requirements (doc__kvs_requirements).

Configuration Effects#

Loading, flushing and snapshot handling are shown in the dynamic architecture of Persistency KVS Feature Arc... (doc__persistency_kvs_architecture).

Examples#

See examples/README.md.

API Reference#

Logical interface: logic_arc_int__persistency__interface. The API is documented in the source code (C++: score/kvs, Rust: crate rust_kvs, cargo doc -p rust_kvs).

Performance Considerations#

Performance properties are defined by feat_req__persistency__fast_access, feat_req__persistency__cached_access and feat_req__persistency__write_amplification; verification results are documented in Persistency Module Verifica... (mod_vrep__persistency__report).

Integration Guidelines#

The Bazel integration is described in examples/README.md. The application shall fulfill the assumptions of use listed in Persistency Safety Manual (doc__persistency_safety_manual) and Persistency Security Manual (doc__persistency_security_manual).

Version History, Compatibility, and Troubleshooting#

See Persistency Release Note (doc__persistency_release_note).

Safety and Security#

See Persistency Safety Manual (doc__persistency_safety_manual) and Persistency Security Manual (doc__persistency_security_manual).

License#

See LICENSE.

Feedback and Contributions#

Report issues in the issue tracker.