CRITICAL FIX: getMetadataBatch was only implemented in S3CompatibleStorage, causing other adapters to fall back to individual calls = socket exhaustion\! Universal Implementation: - Add getMetadataBatch() to MemoryStorage (in-memory batch processing) - Add getMetadataBatch() to FileSystemStorage (10 concurrent file reads) - Add getMetadataBatch() to OPFSStorage (10 concurrent OPFS operations) - Enhanced S3CompatibleStorage with adaptive delays and timeout handling Enhanced Debugging: - Log storage adapter type and batch availability - Clear fallback warnings if batch processing unavailable - Progress reporting with success rates - Better timeout and error handling This ensures socket exhaustion prevention works regardless of storage adapter. Services using Memory/FileSystem/OPFS storage will now use batch processing instead of 1400+ individual getMetadata() calls during initialization. Expected result: Services initialize successfully across ALL storage types |
||
|---|---|---|
| .. | ||
| adapters | ||
| backwardCompatibility.ts | ||
| baseStorage.ts | ||
| cacheManager.ts | ||
| enhancedCacheManager.ts | ||
| readOnlyOptimizations.ts | ||
| storageFactory.ts | ||