Ismaël Mejía created AVRO-4307:
----------------------------------
Summary: [javascript] BlockDecoder should destroy itself on
decompression error to stop upstream I/O
Key: AVRO-4307
URL: https://issues.apache.org/jira/browse/AVRO-4307
Project: Apache Avro
Issue Type: Improvement
Components: javascript
Reporter: Ismaël Mejía
Assignee: Ismaël Mejía
When a BlockDecoder used via createFileDecoder (ReadStream.pipe(BlockDecoder))
hits a decompression/size error, it emits an error event but does not destroy
itself. The upstream file stream can continue reading and feeding data after
the error, doing unnecessary I/O/CPU work and possibly emitting multiple
errors. BlockDecoder should tear down (destroy) on a fatal error so the pipe
unwinds. This touches the hand-rolled finish/push(null) lifecycle in files.js
and needs careful testing; split out from AVRO-4287.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)