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)

Reply via email to