andygrove commented on issue #3532: URL: https://github.com/apache/datafusion-comet/issues/3532#issuecomment-5850481934
The path this issue points at is gone. #4572 moved the JVM-to-native input path to the Arrow C Stream interface, whose Rust types release themselves on drop, and #5539 fixed the leak after a failed import in the other direction. One copy of the pattern is left, in native columnar-to-row. `columnarToRowConvert` takes ownership of the exported columns one at a time ([jni_api.rs#L1809-L1835](https://github.com/apache/datafusion-comet/blob/bc4be39964cbe9cdb5f2a949740a8164e6b5755b/native/core/src/execution/jni_api.rs#L1809-L1835)). If importing a column fails, the columns after it are never taken, so their exports are never released, and `NativeColumnarToRowConverter.convert` does no cleanup of its own. That path has been off by default since #5114, so the exposure is small, but I'll keep this issue open for it. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
