Fixed
Pinned fields
Click on the next to a field label to start pinning.
Details
Components
Assignee
Jacob Cobbett-SmithJacob Cobbett-SmithReporter
Jacob Cobbett-SmithJacob Cobbett-SmithPriority
MajorCompatibility
Point
Details
Details
Components
Assignee
Jacob Cobbett-Smith
Jacob Cobbett-SmithReporter
Jacob Cobbett-Smith
Jacob Cobbett-SmithPriority
Compatibility
Point
Created November 18, 2019 at 1:13 PM
Updated December 9, 2019 at 4:03 PM
Resolved November 21, 2019 at 1:48 PM
A balanced splitter uses a [configurable] small memory buffer to hold rows.
It blocks when this limit is read until other arms have caught up.
To know when it has read ahead enough, it uses a rowSize method, but unfortunately this was based on the size returned from the generated output meta, and not the actual potential footprint.
This is particularly significant when child datasets are involved, where the actual memory footprint is variable and quite likely much bigger than the nominal size of the parent record.
Elsewhere in similar situations a size serializer is used to get the actual size.
Balanced splitter should do the same.