This directory contains version-specific migration guides for upgrading between ThemisDB versions.
- v1.7.x to v1.8.0 - Wire Protocol V2, versioned API routing, ZSTD compression, SAGA engine
- v1.3.x to v1.4.x - Extended context, LLM features, pagination
- (Guides for v1.4→v1.5, v1.5→v1.6, v1.6→v1.7 will be added retroactively)
When creating a new migration guide, follow this structure:
# Migration Guide: vX.Y to vX.Y+1
## Overview
Brief summary of changes and why upgrade is beneficial.
## Breaking Changes
List of breaking changes (if any).
## New Features
Highlight new features available after upgrade.
## Deprecated Features
List of newly deprecated features.
## Step-by-Step Migration
1. Pre-migration checks
2. Backup procedures
3. Upgrade steps
4. Post-migration validation
5. Rollback procedure (if needed)
## Code Changes Required
Example code changes needed.
## Testing
How to test the migration.
## Support
Where to get help.- Review Release Notes: Read CHANGELOG.md for the target version
- Check Compatibility: Review API Compatibility Matrix
- Backup Data: Always backup before major upgrades
- Test in Staging: Test migration in non-production environment
- Review Deprecations: Check Deprecation Registry
- Follow Guide: Use version-specific migration guide
- Monitor Logs: Watch for errors and warnings
- Incremental Approach: Upgrade one minor version at a time
- Document Issues: Note any unexpected behavior
- Keep Rollback Ready: Have rollback plan prepared
- Verify Functionality: Run integration tests
- Check Performance: Compare metrics before/after
- Update Configuration: Apply new recommended settings
- Update Dependencies: Upgrade client libraries
- Monitor Production: Watch metrics for first 48 hours
[Production v1.3.x] ←→ Load Balancer ←→ [Staging v1.4.x]
↓
Switch traffic gradually
↓
[Staging v1.3.x] ←→ Load Balancer ←→ [Production v1.4.x]
Node 1: v1.3.x → v1.4.x (upgrade first)
Node 2: v1.3.x (still running)
Node 3: v1.3.x (still running)
↓
Node 1: v1.4.x (running)
Node 2: v1.3.x → v1.4.x (upgrade second)
Node 3: v1.3.x (still running)
↓
Node 1: v1.4.x (running)
Node 2: v1.4.x (running)
Node 3: v1.3.x → v1.4.x (upgrade last)
95% traffic → v1.3.x (stable)
5% traffic → v1.4.x (canary)
↓
Monitor metrics, error rates
↓
80% traffic → v1.3.x
20% traffic → v1.4.x
↓
Continue gradually
↓
100% traffic → v1.4.x
When upgrading across multiple versions, follow this path:
v1.0.x → v1.1.x → v1.2.x → v1.3.x → v1.4.x → v1.5.x → v1.6.x → v1.7.x → v1.8.x
Important: Do not skip minor versions. Upgrade sequentially to ensure proper migration of data structures and configurations.
If you must skip versions:
- Review all intermediate CHANGELOGs
- Combine all migration steps
- Test extensively in staging
- Have rollback plan ready
- Consider professional support
Rollback if:
- Critical bugs discovered
- Performance degradation >20%
- Data integrity issues
- Incompatibility with critical systems
- Failed validation tests
- Stop ThemisDB services
- Restore backup (data + config)
- Reinstall previous version
- Verify data integrity
- Resume services
- Document issues for future attempts
- <1 hour since upgrade: Easy rollback
- 1-24 hours: Moderate complexity
- >24 hours: May require data reconciliation
- >7 days: Rollback not recommended
- GitHub Discussions: https://github.com/makr-code/ThemisDB/discussions
- GitHub Issues: https://github.com/makr-code/ThemisDB/issues
- Stack Overflow: Tag
themisdb
For enterprise customers:
- Email: enterprise@themisdb.com
- Priority support with SLA
- Dedicated migration assistance
- Custom migration planning
Found an issue in a migration guide?
- Open an issue: https://github.com/makr-code/ThemisDB/issues
- Submit a PR with corrections
- Share your migration experience
All migration guides are released under the same license as ThemisDB. See LICENSE for details.