WillAyd commented on issue #1655: URL: https://github.com/apache/iceberg-python/issues/1655#issuecomment-2755323047
Using the terminology from the Arrow standard, the presence of `__arrow_c_stream__` on an object would signal that you are a _producer_ of Arrow data. A _consumer_ may inspect your object, and upon detecting that dunder, know that your object implements the Arrow stream protocol. As far as the usage is concerned, you would still maintain ownership of the lifecycle of that data, regardless of how many consumers try to view it. So from that perspective you typically don't need to worry about what consumers are doing with it, unless you are doing something highly specialized. The most current listing I am aware of of libraries that use the PyCapsule protocol is available here: https://github.com/apache/arrow/issues/39195#issuecomment-2245718008 By implementing `__arrow_c_stream__` you would let most if not all of those libraries have a zero-copy way of accessing your data. -- 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: issues-unsubscr...@iceberg.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org For additional commands, e-mail: issues-h...@iceberg.apache.org