CurtHagenlocher commented on issue #2265: URL: https://github.com/apache/arrow-adbc/issues/2265#issuecomment-2428102343
Ah, I should have been able to figure this out without debugging. There's a functionality gap described by https://github.com/apache/arrow/issues/36057 which prevents this from working. Unfortunately, the failure mode is nearly impossible to figure out without a debugger. There's a draft PR at https://github.com/apache/arrow/pull/40992 which should resolve the problem (and which I apparently need to prioritize). You can work around the problem by cloning the data, which is of course a pretty high price to pay. I did that with ``` class ClonedArrayStream : IArrowArrayStream { readonly IArrowArrayStream _arrowArrayStream; public ClonedArrayStream(IArrowArrayStream arrowArrayStream) { _arrowArrayStream = arrowArrayStream; } public Schema Schema => _arrowArrayStream.Schema; public async ValueTask<RecordBatch?> ReadNextRecordBatchAsync(CancellationToken cancellationToken = default) { var next = await _arrowArrayStream.ReadNextRecordBatchAsync(cancellationToken); return next?.Clone(); } public void Dispose() => _arrowArrayStream.Dispose(); } ``` -- 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]
