Update how we read in ControlPoints to avoid protobuf errors with large ControlNetworks.
No impact expected with smaller control networks. It may now be possible to read in larger control networks than before without error. Minor improvement in memory usage when reading large networks.
When reading in a Control Newtork, read streams need to be recreated more often to avoid protobuf errors.
#1 Updated by Jesse Mapel 10 months ago
- Category set to API
- Status changed from In Progress to Resolved
- Impact updated (diff)
What was happening is that we were reusing one of protobuf's input streams that maintains an internal buffer. With very large control points (read lots of measures) this was bumping into the buffer size limit imposed by protobuf for security reasons. Changing how we reuse these streams fixes the problem.