🚀 Nexus Engine - Version 1.4.2
This release brings significant stability improvements, memory leak fixes, thread-safety enhancements, and clean refactoring across both core core application logic and data addon management.
📋 What's Changed
⚙️ Core & Lifecycle Enhancements (NexusApplication)
- Thread Safety: Marked the singleton
NexusApplicationinstance asvolatileto prevent stale references in highly concurrent multi-threaded environments. - Memory & Resource Fixes: Wrapped
URLClassLoaderwithin atry-with-resourcesblock to ensure file handles and memory resources are immediately freed after loading JARs. - Database & Threading: Resolved a parallel connection race condition on MongoDB by adding a 10-second initial delay to the scheduled task. Also standardized initial database verification tasks on the Swing thread.
- Safety First:
getInfluxDBManager()now returns anOptional<InfluxDBManager>, explicitly enforcing downstream NPE checks when metrics are disabled.
📊 Data & Metrics Refactoring (DataAddon)
- Critical Bug Fix: Fixed a telemetry bug in
handleIncrementDatawhere the old JSON payload was being pushed instead of the newly updated one. - Performance Optimization: Reduced repetitive
getApplication()andgetRedisManager()lookups by caching them into local variables. - Early Validation: Added input validation before spawning Redis tasks to eliminate redundant asynchronous operations.
- Code Cleanups: Modernized
Optionalhandling via.ifPresent(...), simplified metric annotation lookups, and pruned unused imports.