Update v1.1.5-SNAPSHOT
Major improvements with backups, performance enhancements, bug fixes, and more!
[HR][/HR]
✨ Added
- Backup System – Complete backup and restore functionality
- Automatic daily backups with configurable retention
- Manual backup creation via /sync backup create
- Restore backups via /sync restore <player> [backup_id]
- SQL dump generation for database backups
- ZIP compression for file backups
- Backup listing and management commands
- Performance Caching – In-memory player data cache
- Configurable cache size and TTL (Time-To-Live)
- LRU eviction policy (Least Recently Used)
- Optional compression for memory optimization
- Cache statistics and management via /sync cache
- Enhanced Performance Monitoring
- Detailed save/load time tracking
- Connection pool statistics
- Performance metrics logging
- Slow operation detection and warnings
- Improved Update Checker
- Configurable timeout settings
- Better error handling for network issues
- Download link in update notifications
- User-Agent header for API requests
- Emergency Configuration System
- Automatic config file creation if missing
- Fallback configuration generation
- Debug information for configuration issues
- Multi-layer configuration loading approach
[HR][/HR]
Changed
- Achievement Sync Limits – Increased support for Minecraft’s 1000+ advancements
- MAX_COUNT_ATTEMPTS: 1000 → 2000
- MAX_ACHIEVEMENTS: 1000 → 2000
- MAX_PROCESSED: 2000 → 3000
- Large amount warning threshold: 500 → 1500
- Database Performance
- Enhanced connection pooling
- Exponential backoff for connection acquisition
- Increased total timeout to 10 seconds
- Better connection pool exhaustion handling
- Inventory Utilities
- Improved ItemStack sanitization and validation
- Better corrupted data handling
- Enhanced Base64 serialization and deserialization
- Configuration Management
- Multiple fallback mechanisms
- Emergency configuration creation
- Better error diagnostics and logging
[HR][/HR]
Fixed
- Critical Achievement Bug – Fixed infinite loop in advancement counting
- Added hard limits to prevent server freezes
- Implemented timeout-based processing
- Better error handling and logging
- Database Parameter Error
- Fixed "No value specified for parameter 20" issue
- Corrected SQL REPLACE INTO statement
- Added missing advancements and server_id parameters
- Slow Save Detection
- Optimized achievement serialization for large data sets
- Reduced processing time with batch operations
- Implemented performance monitoring with timeouts
- Configuration Loading
- Fixed empty config.yml issue
- Added fallback configuration mechanisms
- Improved resource loading handling
- Compilation Errors
- Added missing imports (java.io.File, java.io.FileWriter)
- Resolved date ambiguity in BackupManager
- Fixed nested try-catch block issues
[HR][/HR]
Security
- Improved ItemStack sanitization and data validation
- Enhanced audit logging for security events
- Better error recovery for corrupted data
[HR][/HR]
⚡ Performance
- Cache compression and TTL management
- Optimized database efficiency with connection pooling and batching
- Non-blocking asynchronous backup and save operations
- Improved memory and resource cleanup
[HR][/HR]
Compatibility
- Full support for Minecraft 1.21.5
- Maintained legacy support for 1.20.x
- Compatible with MySQL, SQLite, and PostgreSQL
- Proper API version handling
[HR][/HR]
⚙️ Configuration
- performance.cache_ttl – Cache time-to-live in milliseconds
- performance.cache_compression – Enable or disable cache compression
- update_checker.timeout – Connection timeout for update checks
- performance.max_achievements_per_player – Increased to 2000
- server.id – Unique server identifier for multi-server setups
[HR][/HR]
️ Commands
- New Commands
- /sync backup create – Create a manual backup
- /sync restore <player> [backup_id] – Restore a player from a backup
- /sync cache clear – Clear performance cache
- Enhanced Commands
- /sync cache – Now shows performance and connection pool statistics
- /sync status – Improved status reporting
- /sync reload – Better configuration reload handling
[HR][/HR]
Technical Details
- Improved error handling and logging
- Better memory and resource management
- Enhanced diagnostic information for debugging
- More robust exception handling and recovery
[HR][/HR]