Skip to content

Releases: makr-code/ThemisDB

ThemisDB v1.8.1-rc1

04 Apr 08:11

Choose a tag to compare

ThemisDB v1.8.1-rc1 Pre-release
Pre-release

Release Candidate v1.8.1-rc1 (minor bugfix RC).

Highlights

  • Former beta modules graduated to production-ready: api, content, geo, gpu, process, sharding
  • Docker runtime paths standardised to Linux FHS (/etc/themis/config, /var/lib/themis/data, /var/log/themis)
  • Spurious startup warnings downgraded to INFO (PIIDetector, gRPC stubs)
  • CONFIG sig/data directory layout with backward-compat symlinks
  • themisctl v0.0.2 — unified management CLI (health, version, query, get, put, delete, config, branch, snapshot, admin, repl)
  • VERSION/RELEASE_TYPE set to 1.8.1-rc1 / rc

Validation

  • Local production-readiness targeted gates completed
  • Sharding focused test + benchmark evidence: artifacts/production-readiness/20260404_*

Docker

docker pull themisdb/themisdb:v1.8.1-rc1
docker pull themisdb/themisdb:latest

Downloads

Asset Platform Contents
themisdb-linux-x64-v1.8.1-rc1.zip Linux x64 themis_server, runtime libs, config.yaml
themisdb-windows-x64-v1.8.1-rc1.zip Windows x64 themis_server.exe, DLLs, themisctl.exe, themis-export.exe, config.yaml
themisctl-windows-x64-v1.8.1-rc1.zip Windows x64 themisctl.exe + shell completion (bash/zsh/fish)
*.sha256.txt SHA-256 checksums

Verify checksum (Linux/macOS)

sha256sum -c themisdb-linux-x64-v1.8.1-rc1.sha256.txt

Verify checksum (Windows PowerShell)

(Get-FileHash themisdb-windows-x64-v1.8.1-rc1.zip -Algorithm SHA256).Hash.ToLower()
# compare to content of themisdb-windows-x64-v1.8.1-rc1.sha256.txt

Quick start (Linux)

unzip themisdb-linux-x64-v1.8.1-rc1.zip
chmod +x ./bin/themis_server
LD_LIBRARY_PATH=./bin ./bin/themis_server --config=./config/config.yaml --data-dir=./data

Quick start (Windows)

Expand-Archive themisdb-windows-x64-v1.8.1-rc1.zip
cd themisdb-windows-x64
.\bin\themis_server.exe --config=.\config\config.yaml --data-dir=.\data

Related

ThemisDB v1.8.0

25 Mar 05:41
f11cb37

Choose a tag to compare

ThemisDB v1.8.0 Pre-release
Pre-release

What's Changed

  • docs: Complete SYSTEMATISCHER_REVIEWPLAN.md verification with Option 3 approach (98 items verified, all phases complete) + final report + issue templates by @Copilot in #408
  • feat: Retroactive release building system with Git Flow integration and commit support by @Copilot in #413
  • docs: Fix CMAKE_MODULAR_ARCHITECTURE.md documentation-source code gap by @Copilot in #414
  • Refactor http_server.cpp: Complete foundation with structure, reference implementation, integration guides, and issue templates by @Copilot in #411
  • Revert "[WIP] Implement LLM model loading from RocksDB Blob Store" by @makr-code in #404
  • [DOCS] Create comprehensive src/ directory structure documentation (100% coverage) by @Copilot in #416
  • Add comprehensive examples documentation with index and quickstart guides by @Copilot in #418
  • Create Tools Documentation Hub and Usage Guides by @Copilot in #415
  • [DOCS] CRITICAL: Correct plugin documentation - acceleration IS implemented by @Copilot in #417
  • docs: Documentation cleanup investigation and Phase 1 link verification complete by @Copilot in #444
  • Refactor: Extract ChangefeedApiHandler from http_server.cpp by @Copilot in #447
  • [REFACTOR] Extract Cache Operations into CacheApiHandler by @Copilot in #446
  • Refactor: Extract ContentApiHandler from HttpServer (~900 lines) by @Copilot in #448
  • docs: Complete documentation archival system implementation with CHANGELOG and completion summary by @Copilot in #443
  • Refactor: Extract EntityApiHandler from http_server.cpp (~880 lines) by @Copilot in #449
  • refactor: Extract IndexApiHandler from http_server.cpp by @Copilot in #451
  • [REFACTOR] Extract GraphApiHandler from http_server.cpp by @Copilot in #450
  • refactor: Extract PromptApiHandler from HttpServer by @Copilot in #454
  • Refactor PolicyApiHandler - Extract Ranger policy operations from http_server.cpp by @Copilot in #453
  • Extract query operations from http_server.cpp into QueryApiHandler by @Copilot in #455
  • REFACTOR: Extract monitoring operations into MonitoringApiHandler by @Copilot in #452
  • REFACTOR: Extract transaction operations into TransactionApiHandler by @Copilot in #458
  • REFACTOR: Extract spatial operations into SpatialApiHandler by @Copilot in #456
  • REFACTOR: Extract time series operations into TimeSeriesApiHandler by @Copilot in #457
  • Refactor vector operations into VectorApiHandler by @Copilot in #459
  • Refactor: Extract WAL replication operations into WALApiHandler by @Copilot in #460
  • Refactor PITR implementation to use RocksDBWrapper abstraction by @Copilot in #461
  • Fix HTTP server type mismatch, integrate DiffApiHandler, and document incomplete cpp-httplib migration by @Copilot in #463
  • Add independent Health/Error service on alternate port (9090) by @Copilot in #464
  • Restructure README and CHANGELOG for GitHub best practices by @Copilot in #465
  • Fix 11 compilation errors: missing macros, interface mismatches, missing headers by @Copilot in #469
  • Research: Git/GitHub/GitOps vs ThemisDB version control comparison with existing YAML analysis by @Copilot in #470
  • Add Traveling Salesman Problem example demonstrating graph-based optimization by @Copilot in #471
  • Refactor repository structure: clean root directory and add GitHub best-practice files by @Copilot in #472
  • Complete Stages 1-2 and begin Stages 3-41: Chapters 41-40 complete, Chapter 39 Checkpoint 2 (100%), Chapters 38-1 analyzed (39 total) with 19 issue templates created - 95% analysis coverage, 100% template coverage achieved by @Copilot in #468
  • Stage 3 Checkpoint 3: Expand Chapter 39 Performance Tuning with Storage, Cache, OS, and Transaction sections by @Copilot in #492
  • Chapter 37 Stage 5 CP2: Expand Sections 37.1-37.3 with Technical Depth and Benchmarks by @Copilot in #495
  • Expand Chapter 38 Observability & SRE - Complete All Sections with Scientific Depth by @Copilot in #493
  • [Ch.36 CP2] Expand Security: TLS 1.3, MFA, RBAC/ABAC, Secrets Management by @Copilot in #496
  • Stages 3-4: Complete Chapter 39 validation and Chapter 38 comprehensive expansion by @Copilot in #494
  • Stage 4 Complete: Expand Chapter 35 Data Modeling Patterns (All Sections) + Code Review Fixes by @Copilot in #497
  • [Ch.34 CP2] Expand Query Planning, Execution & Index Selection with Scientific Depth by @Copilot in #498
  • [Ch.33 CP2] Expand Normalization, Denormalization, Schema Evolution & Versioning by @Copilot in #499
  • Close GPU/VRAM documentation-implementation gap: Enable Vulkan+LLM by default with Docker support by @Copilot in #500
  • Add Chapter 32a: API Design & REST Principles with comprehensive REST fundamentals, HTTP methods, and resource design by @Copilot in #501
  • Chapter 31: Add comprehensive REST, gRPC, GraphQL, and protocol sections by @Copilot in #502
  • Expand Chapter 30: Deployment & Operations with Production-Ready Examples by @Copilot in #503
  • Expand Chapter 27: Troubleshooting & Problem Resolution (+5,653 words, 8 scripts, 3 benchmarks) by @Copilot in #506
  • Expand Chapter 28 AQL Reference with syntax fundamentals, operators, subqueries, transactions, and optimization by @Copilot in #505
  • Expand Chapter 29: Analytics & Process Mining - Add OLAP, Process Mining Algorithms, Predictive Analytics by @Copilot in #504
  • [CH26-CP2] Expand Migration & Legacy Integration sections 26.1-26.5 with 12 quality dimensions - Reviewed by @Copilot in #508
  • [CH25-CP2] Expand DevOps & Infrastructure as Code chapter (1.6K→14.8K words) by @Copilot in #509
  • docs: Add and verify comprehensive mermaid architecture diagrams against docs/de by @Copilot in #510
  • Add thematic namespace and class overview documentation with Mermaid diagrams by @Copilot in #507
  • [CH23-CP2] Expand Testing & Quality Assurance chapter with comprehensive coverage by @Copilot in #512
  • Expand Chapter 22: Client Libraries & Drivers (Sections 22.1-22.6) by @Copilot in #513
  • [CH24-CP2] Expand AI Ethics & Governance with GDPR/CCPA compliance, fairness metrics, and data governance by @Copilot in #511
  • Fix clear-text logging of sensitive information in VCC Veritas adapter by @Copilot in #515
  • chore(deps): Bump tj-actions/changed-files from 40 to 46 in /.github/workflows by @dependabot[bot] in #514
  • Add explicit permissions to AFL++ fuzzing workflow by @Copilot in #516
  • Add WordPress plugin for ThemisDB Compendium PDF downloads with interactive preview by @Copilot in #517
  • WordPress Plugin Compatibility: Themis Brand Integration and Best Practices Documentation by @Copilot in #519
  • LLM/LoRA System Analysis: Critical Gaps, Production Roadmap, Implementation Guide, GPU Acceleration, Base Infrastructure, Tests & Issue Templates by @Copilot in #518
  • Implement llama.cpp resource management with GPU backend integration by @Copilot in #522
  • Implement RSA-SHA256 signature verification with OpenSSL for LoRA adapters by @Copilot in #527
  • [LoRA] Implement CPU-based LoRA training system with verified gradients and future phase templates (including QLoRA) by @Copilot in #528
  • Implement token sampling strategies using llama.cpp API by @Copilot in #526
  • Investigation: LLM/LoRa production-readiness gaps and ThemisDB integration analysis by @Copilot in https://github.com/ma...
Read more

ThemisDB v1.3.4

28 Dec 20:34

Choose a tag to compare

ThemisDB v1.3.4

Source Code Archive

Download the source code archive and verify its integrity:

SHA256 Checksum:

$(cat themisdb-1.3.4-source.zip.sha256)

Building from Source

# Extract archive
unzip themisdb-1.3.4-source.zip
cd themisdb-1.3.4

# Build with CMake
cmake -B build -S . -DCMAKE_BUILD_TYPE=Release
cmake --build build

Release Notes

See docs/de/archive/RELEASE_NOTES_v1.3.4.md for detailed release notes.


Commit: f840b2d60ca930cdc14e609f7bca14ac2805ba8f

ThemisDB v1.3.0 - Keep Your Own Llamas

21 Dec 07:13

Choose a tag to compare

ThemisDB v1.3.0 - Native LLM Integration

Release Date: 20. Dezember 2025
Code Name: "Keep Your Own Llamas"


🎉 Overview

ThemisDB v1.3.0 brings native LLM integration with embedded llama.cpp, enabling you to run AI/LLM workloads directly in your database without external API dependencies. This release introduces a complete plugin architecture, GPU acceleration, and enterprise-grade caching for production LLM deployments.

"ThemisDB keeps its own llamas." – Run LLaMA, Mistral, Phi-3 models (1B-70B params) directly in your database.


🚀 Major Features

🧠 Embedded LLM Engine (llama.cpp)

  • Native Integration: llama.cpp embedded as local clone (not committed to repo)
  • Model Support: GGUF format models (LLaMA 3, Mistral, Phi-3, etc.)
  • Inference Engine: Full tokenization, evaluation, sampling, and detokenization pipeline
  • Memory Management: Lazy model loading with configurable VRAM budgets

⚡ GPU Acceleration

  • CUDA Support: NVIDIA GPU acceleration with 100x speedup vs CPU
  • Metal Support: Apple Silicon optimization
  • Vulkan Support: Cross-platform GPU backend
  • Automatic Fallback: Graceful degradation to CPU when GPU unavailable

🧩 Plugin Architecture

  • LlamaCppPlugin: Reference implementation for llama.cpp backend
  • ILLMPlugin Interface: Extensible plugin system for custom LLM backends
  • Plugin Manager: Centralized management with lifecycle control
  • Hot-Swappable: Load/unload models and LoRA adapters dynamically

🗃️ Advanced Model Management

  • Lazy Loading: Ollama-style on-demand model loading (2-3s first load, instant cache hits)
  • Multi-LoRA Manager: vLLM-style support for up to 16 concurrent LoRA adapters
  • Model Pinning: Prevent eviction of critical models from memory
  • TTL Management: Automatic model eviction after configurable idle time (default: 30 min)

💾 Enterprise Caching

  • Response Cache: Semantic caching for identical queries (70-90% cost reduction)
  • Prefix Cache: Reuse common prompt prefixes across requests
  • Model Metadata Cache: TBB lock-free cache for 10x faster metadata access
  • KV Cache Buffer: Shared read-only buffers for 70% memory savings

🔧 Build & Deployment

  • Windows/MSVC Support: PowerShell build script with Visual Studio 2022
  • MSVC Fixes: /Zc:char8_t- compiler flag for llama.cpp compatibility
  • Docker BuildKit: Flexible llama.cpp source (local or git clone)
  • Offline-First: Root vcpkg standardization for reproducible builds

📚 Documentation

  • Consolidated Guides: Root README + 17 specialized LLM docs (380 KB)
  • Integration Paths: Local clone approach (no git submodules)
  • API Specifications: HTTP REST + gRPC binary protocols
  • Client SDKs: Python, JavaScript, Go, Rust, Java, C# examples

📦 What's Included

Binary Artifacts

  • themis_server.exe (10.2 MB) - Windows x64 Release
  • llama.dll (2.2 MB) - llama.cpp inference engine
  • ggml*.dll (1.4 MB) - GGML computation kernels

Source Components

  • 23 LLM Headers (include/llm/)
  • 23 LLM Implementations (src/llm/)
  • 17 Documentation Guides (docs/llm/)
  • 8+ Test Suites (tests/test_llm_*.cpp)
  • PowerShell Build Script (scripts/build-themis-server-llm.ps1)

🔄 Breaking Changes

⚠️ llama.cpp Submodule Removed

  • Before: external/llama.cpp as git submodule
  • After: Local clone in project root (excluded via .gitignore/.dockerignore)
  • Migration: Clone llama.cpp locally: git clone https://github.com/ggerganov/llama.cpp.git

⚠️ vcpkg Standardization

  • Before: Multiple vcpkg locations (external/vcpkg, ./vcpkg)
  • After: Single root ./vcpkg with VCPKG_ROOT standardization
  • Migration: Set VCPKG_ROOT=C:\VCC\themis\vcpkg (or your path)

⚠️ Docker Build Context

  • Before: external/ copied into build context
  • After: external/ excluded; use BuildKit --build-context for llama.cpp
  • Migration: See Docker build commands below

🛠️ Installation & Upgrade

Windows (MSVC)

# Clone repository
git clone https://github.com/makr-code/ThemisDB.git
cd ThemisDB

# Clone llama.cpp locally (required for LLM support)
git clone https://github.com/ggerganov/llama.cpp.git llama.cpp

# Build with LLM support
powershell -File scripts/build-themis-server-llm.ps1

# Verify build
./build-msvc/Release/themis_server.exe --help

Docker (with LLM)

# With local llama.cpp clone
docker buildx build \
  --build-arg ENABLE_LLM=ON \
  --build-context llama=./llama.cpp \
  -t themisdb:v1.3.0-llm .

# Without local clone (git clone in Docker)
docker buildx build \
  --build-arg ENABLE_LLM=ON \
  -t themisdb:v1.3.0-llm .

Linux/WSL

# Clone and build
git clone https://github.com/makr-code/ThemisDB.git
cd ThemisDB
git clone https://github.com/ggerganov/llama.cpp.git llama.cpp

cmake -B build -DTHEMIS_ENABLE_LLM=ON
cmake --build build -j$(nproc)

./build/themis_server --help

📖 Quick Start

1. Download a Model

# Example: Mistral 7B Instruct Q4 (~4GB)
mkdir -p models
cd models
wget https://huggingface.co/TheBloke/Mistral-7B-Instruct-v0.2-GGUF/resolve/main/mistral-7b-instruct-v0.2.Q4_K_M.gguf

2. Configure LLM

# config/llm_config.yaml
llm:
  enabled: true
  plugin: llamacpp
  model:
    path: ./models/mistral-7b-instruct-v0.2.Q4_K_M.gguf
    n_gpu_layers: 32  # GPU offload layers
    n_ctx: 4096       # Context window
  cache:
    max_models: 3
    max_vram_mb: 24576  # 24 GB

3. Start Server

./themis_server --config config/llm_config.yaml

4. Run Inference (HTTP API)

curl -X POST http://localhost:8765/api/llm/generate \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "What is ThemisDB?",
    "max_tokens": 512,
    "temperature": 0.7
  }'

🎯 Performance Benchmarks

GPU vs CPU (Mistral-7B Q4, RTX 4090)

Operation CPU (20 cores) GPU (CUDA) Speedup
Model Load 2.8s 2.1s 1.3x
Inference (512 tokens) 32s 0.3s 107x
Throughput 16 tok/s 1,700 tok/s 106x

Memory Usage (with Caching)

Feature Memory Savings
Base Model (Mistral-7B Q4) 4.2 GB -
+ Response Cache 4.5 GB 85% query cost
+ Prefix Cache 4.6 GB 40% latency
+ KV Cache Sharing 3.1 GB 70% memory

Lazy Loading Impact

Scenario Cold Start Warm Cache Benefit
First Request 2.8s - -
Subsequent Requests - ~0ms Instant
After TTL Expiry 2.8s - Auto-reload

🔒 Security Considerations

  • Model Files: Store models outside web root with proper permissions
  • API Authentication: Enable Bearer Token (JWT) authentication in production
  • Rate Limiting: Configure per-user quotas for inference requests
  • Resource Limits: Set max_vram_mb and max_models to prevent exhaustion
  • Audit Logging: All LLM operations logged for compliance

📊 Known Limitations

  1. Windows DLL Export Limit: Use static build (THEMIS_CORE_SHARED=OFF) to avoid 65k symbol limit
  2. GPU Memory: Requires sufficient VRAM for model + overhead (~100 MB CUDA)
  3. Model Format: Only GGUF format supported (llama.cpp v2+)
  4. Concurrent Requests: Limited by available VRAM and KV cache size
  5. Docker BuildKit: Requires Docker 19.03+ and BuildKit enabled

🐛 Bug Fixes

  • Fixed MSVC char8_t compilation errors in llama.cpp via /Zc:char8_t- flag
  • Resolved vcpkg path conflicts between external/vcpkg and root ./vcpkg
  • Corrected Docker .dockerignore to exclude llama.cpp/ from build context
  • Removed circular submodule dependencies (docker/tmp/openssl, external/llama.cpp)
  • Fixed CMake generator/architecture issues on Windows (requires -A x64)

📝 Deprecations

  • Git Submodules for llama.cpp: Deprecated in favor of local clone approach
  • external/vcpkg: Deprecated in favor of root ./vcpkg location
  • Manual llama.cpp Setup: Use scripts/setup-llamacpp.sh or PowerShell build script

🔮 Roadmap (v1.4.0)

  • Streaming Generation: Server-Sent Events (SSE) for real-time responses
  • Batch Inference: Process multiple requests in single forward pass
  • Distributed Sharding: Multi-node LLM deployment with etcd coordination
  • vLLM Plugin: Native vLLM backend for PagedAttention and continuous batching
  • Model Replication: Raft consensus for cross-shard model synchronization
  • Advanced Quantization: Support for AWQ, GPTQ, and custom quantization schemes

🙏 Acknowledgments

  • llama.cpp Team: For the incredible inference engine (MIT License)
  • GGML: For efficient tensor operations on CPU/GPU
  • HuggingFace: For GGUF model hosting and community
  • ThemisDB Contributors: For testing, feedback, and documentation improvements

📚 Documentation


📞 Support & Community

  • GitHub Issues: [Report bugs or request features](https://git...
Read more

ThemisDB v1.0.0

16 Feb 17:41

Choose a tag to compare

ThemisDB v1.0.0

Source Code Archive

Download the source code archive and verify its integrity:

SHA256 Checksum:

$(cat themisdb-1.0.0-source.zip.sha256)

Building from Source

# Extract archive
unzip themisdb-1.0.0-source.zip
cd themisdb-1.0.0

# Build with CMake
cmake -B build -S . -DCMAKE_BUILD_TYPE=Release
cmake --build build

Release Notes

See docs/de/archive/RELEASE_NOTES_v1.0.0.md for detailed release notes.


Commit: 2103e46d6de0b899ad0aa2c8d276551d66b27e9d