Skip to content
GitHub Actions edited this page Jan 2, 2026 · 1 revision

saga.cpp

Stand: 5. Dezember 2025
Version: 1.0.0
Kategorie: Src


Path: src/transaction/saga.cpp

Purpose: Implements SAGA pattern orchestration for distributed transactions and compensation flows.

Public functions / symbols:

  • if (compensated_) {
  • if (it->compensated) {
  • for (const auto& step : steps_) {
  • if (!status.ok) {
  • compensate();
  • THEMIS_WARN("SAGA: Already compensated, skipping");
  • for (auto it = steps_.rbegin(); it != steps_.rend(); ++it) {
  • THEMIS_DEBUG("SAGA: Step '{}' already compensated, skipping", it->operation_name);
  • THEMIS_DEBUG("SAGA: Compensating step '{}'", it->operation_name);
  • THEMIS_ERROR("SAGA: Unknown error during compensation of '{}'", it->operation_name);
  • THEMIS_DEBUG("SAGA: Restored old value for key '{}'", key);
  • THEMIS_WARN("SAGA: Delete of non-existent key '{}' - no compensation needed", key);
  • THEMIS_DEBUG("SAGA: Restored deleted key '{}'", key);
  • THEMIS_WARN("SAGA: Index compensation requires direct DB access - not fully implemented yet");
  • THEMIS_WARN("SAGA: Graph compensation requires batch context - simplified implementation");
  • THEMIS_WARN("SAGA: Vector compensation failed for '{}': {}", pk, status.message);
  • THEMIS_DEBUG("SAGA: Removed vector '{}' from cache", pk);

ThemisDB Dokumentation

Version: 1.3.0 | Stand: Dezember 2025


📋 Schnellstart


🏗️ Architektur


🗄️ Basismodell


💾 Storage & MVCC


📇 Indexe & Statistiken


🔍 Query & AQL


💰 Caching


📦 Content Pipeline


🔎 Suche


⚡ Performance & Benchmarks


🏢 Enterprise Features


✅ Qualitätssicherung


🧮 Vektor & GNN


🌍 Geo Features


🛡️ Sicherheit & Governance

Authentication

Schlüsselverwaltung

Verschlüsselung

TLS & Certificates

PKI & Signatures

PII Detection

Vault & HSM

Audit & Compliance

Security Audits

Gap Analysis


🚀 Deployment & Betrieb

Docker

Observability

Change Data Capture

Operations


💻 Entwicklung

API Implementations

Changefeed

Security Development

Development Overviews


📄 Publikation & Ablage


🔧 Admin-Tools


🔌 APIs


📚 Client SDKs


📊 Implementierungs-Zusammenfassungen


📅 Planung & Reports


📖 Dokumentation


📝 Release Notes


📖 Styleguide & Glossar


🗺️ Roadmap & Changelog


💾 Source Code Documentation

Main Programs

Source Code Module


🗄️ Archive


🤝 Community & Support


Vollständige Dokumentation: https://makr-code.github.io/ThemisDB/

Clone this wiki locally