fix: resolve 50-100x slower add() on cloud storage (GCS/S3/R2/Azure)
Root cause: Storage type detection at setupIndex() relied on this.config.storage.type which was never set after createStorage() auto-detected the storage type. This caused cloud storage to use 'immediate' persistence mode instead of 'deferred', resulting in 20-30 GCS writes per add() operation (7-12 seconds instead of 50-200ms). Fix: Added getStorageType() helper that detects storage type from the storage instance class name (e.g., GcsStorage → 'gcs'), used as fallback when config.storage.type is not explicitly set. Also added: - Performance regression tests (10 new tests) - test:perf npm script for running performance tests 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
493b840527
commit
65703dbe59
3 changed files with 246 additions and 2 deletions
|
|
@ -83,6 +83,7 @@
|
|||
"test:watch": "NODE_OPTIONS='--max-old-space-size=8192' vitest --config tests/configs/vitest.unit.config.ts",
|
||||
"test:coverage": "NODE_OPTIONS='--max-old-space-size=8192' vitest run --config tests/configs/vitest.unit.config.ts --coverage",
|
||||
"test:unit": "NODE_OPTIONS='--max-old-space-size=8192' vitest run --config tests/configs/vitest.unit.config.ts",
|
||||
"test:perf": "vitest run tests/unit/performance --reporter=basic",
|
||||
"test:integration": "NODE_OPTIONS='--max-old-space-size=32768' vitest run --config tests/configs/vitest.integration.config.ts",
|
||||
"test:s3": "vitest run tests/integration/s3-storage.test.ts",
|
||||
"test:distributed": "vitest run tests/integration/distributed.test.ts",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue