refactor!: update arrow-ipc output to stream format (#7922)

* refactor!: update arrow-ipc output to stream format

* chore: format
This commit is contained in:
Ning Sun
2026-04-07 19:37:21 +08:00
committed by GitHub
parent 233e35c0c9
commit 1df9837538
2 changed files with 8 additions and 8 deletions

View File

@@ -1312,7 +1312,7 @@ mod test {
use std::io::Cursor;
use std::sync::Arc;
use arrow_ipc::reader::FileReader;
use arrow_ipc::reader::StreamReader;
use arrow_schema::DataType;
use axum::handler::Handler;
use axum::http::StatusCode;
@@ -1684,8 +1684,8 @@ mod test {
HttpResponse::Arrow(resp) => {
let output = resp.data;
let mut reader =
FileReader::try_new(Cursor::new(output), None).expect("Arrow reader error");
let mut reader = StreamReader::try_new(Cursor::new(output), None)
.expect("Arrow reader error");
let schema = reader.schema();
assert_eq!(schema.fields[0].name(), "numbers");
assert_eq!(schema.fields[0].data_type(), &DataType::UInt32);

View File

@@ -17,7 +17,7 @@ use std::sync::Arc;
use arrow::datatypes::Schema;
use arrow_ipc::CompressionType;
use arrow_ipc::writer::{FileWriter, IpcWriteOptions};
use arrow_ipc::writer::{IpcWriteOptions, StreamWriter};
use axum::http::{HeaderValue, header};
use axum::response::{IntoResponse, Response};
use common_error::status_code::StatusCode;
@@ -48,7 +48,7 @@ async fn write_arrow_bytes(
let options = IpcWriteOptions::default()
.try_with_compression(compression)
.context(error::ArrowSnafu)?;
let mut writer = FileWriter::try_new_with_options(&mut bytes, schema, options)
let mut writer = StreamWriter::try_new_with_options(&mut bytes, schema, options)
.context(error::ArrowSnafu)?;
while let Some(rb) = recordbatches.next().await {
@@ -164,7 +164,7 @@ impl IntoResponse for ArrowResponse {
mod test {
use std::io::Cursor;
use arrow_ipc::reader::FileReader;
use arrow_ipc::reader::StreamReader;
use arrow_schema::DataType;
use common_recordbatch::{RecordBatch, RecordBatches};
use datatypes::prelude::*;
@@ -200,8 +200,8 @@ mod test {
match http_resp {
HttpResponse::Arrow(resp) => {
let output = resp.data;
let mut reader =
FileReader::try_new(Cursor::new(output), None).expect("Arrow reader error");
let mut reader = StreamReader::try_new(Cursor::new(output), None)
.expect("Arrow reader error");
let schema = reader.schema();
assert_eq!(schema.fields[0].name(), "numbers");
assert_eq!(schema.fields[0].data_type(), &DataType::UInt32);