Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## develop #928 +/- ##
===========================================
+ Coverage 97.63% 97.78% +0.14%
===========================================
Files 406 406
Lines 6649 6634 -15
Branches 884 884
===========================================
- Hits 6492 6487 -5
+ Misses 73 64 -9
+ Partials 84 83 -1 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
PR Review: Reduce data export memory usageThis is a clean and well-motivated refactor. The core approach — pre-fetching prop keys with targeted queries and streaming entities in a single pass — is the right fix for memory-bound exports. The alias cache eviction is correctly placed after all events on a page have been yielded, the 1. Code quality and best practicesMinor — The function builds const metaPropKeys = propKeys.filter((k) => k.startsWith('META_'))
const otherPropKeys = propKeys.filter((k) => !k.startsWith('META_'))This produces deterministic column order only because all three callers use 2. Potential bugs or issuesNo issues found. 3. Performance considerationsNo issues found. 4. Security concernsNo issues found. 5. Test coverageMinor — Cache-eviction test accesses private method via prototype with unexpected const proto = Object.getPrototypeOf(exporter)
for await (const event of proto.streamEvents(dataExport, em, true)) {Calling for await (const event of (exporter as any).streamEvents(dataExport, em, true)) {This preserves the correct Overall this is a solid improvement — no blockers, just two minor nits worth noting before merge. |
7035b47 to
9b1145d
Compare
9b1145d to
b0bccbc
Compare
No description provided.