kou opened a new pull request, #36344:
URL: https://github.com/apache/arrow/pull/36344

   ### Rationale for this change
   
   Because they (pull-based and push-based) must have the same behavior.
   
   ### What changes are included in this PR?
   
   This PR extracts reusable codes to StreamDecoderInternal from 
StreamDecoderImpl. External API isn't changed for
   RecordBatchStreamReader and StreamDecoder.
   
   This PR adds some external API to implement this:
   
   * arrow::Status::ToStringWithoutContextLines(): This is only for testing. We 
can get stable result of ASSERT_RAISES_WITH_MESSAGE() with/without 
-DARROW_EXTRA_ERROR_CONTEXT=ON by this.
   
     We can extract this and related changes to separated PR if we want.
   
   * arrow::ipc::Listener::OnRecordBatchWithMetadataDecoded(): Because 
RecordBatchStreamReader wants not only RecordBatch but also custom metadata. 
OnRecordBatchWithMetadataDecoded() receives RecordBatchWithMetadata. 
OnRecordBatchDecoded() still exists and it's used by default for backward 
compatibility.
   
   * arrow::ipc::CollectListener::metadatas(), 
arrow::ipc::CollectListener::num_record_batches(), 
arrow::ipc::CollectListener::PopRecordBatch(), 
arrow::ipc::CollectListener::PopRecordBatchWithMetadat(): If we add these APIs, 
we can use CollectListner in RecordBatchStreamReader. We can create an internal 
listener only for RecordBatchStreamReader if don't want to extend 
CollectListener.
   
   ### Are these changes tested?
   
   Yes.
   
   ### Are there any user-facing changes?
   
   Yes.


-- 
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]

Reply via email to