Document-grafiekhydratatie kent geen 8 MiB-plafond en herschrijft CRLF #1666
Labels
No labels
accepted
bug
declined
docs
duplicate
enhancement
good first issue
in-progress
needs-info
privacy
security
triage
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
LibreKAT/Ocideck#1666
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Wat er misgaat
Twee gaten naast de symlink in #1640, in hetzelfde
_inlineBlock:FileService.maxChartDataBytes(8 MiB). Documentexport leest het bestand volledig in het geheugen tijdensbuildDocumentExportBundle.```chart\n…\n```(LF). In een verder CRLF-getrouw document worden die blokken op LF gezet vóór de scan.Waar het zit
lib/services/document_chart_hydration.dart. Cap staat inlib/services/file/file_service_open.dartbij_hydrateCharts.Stappen
(1)
source: data/huge.jsonvan tientallen MiB, document exporteren → geheugenpiek. (2) CRLF-document met een chart-fence exporteren → die fence is LF in de gehydrateerde tussenstap.Wat het met het formaat doet
De meester
.mdvia Opslaan blijft byte-getrouw; de exportvoorbereiding niet. Een pathologisch databestand is een DoS op het exportpad.Regressie
Zelfde 8 MiB-cap als deck-open; fence-einde van het brondocument hergebruiken. Tests naar
document_chart_hydration_test.dart.