Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(dep): bump arrow-udf-flight #17544

Closed
wants to merge 10 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2,082 changes: 408 additions & 1,674 deletions Cargo.lock

Large diffs are not rendered by default.

51 changes: 24 additions & 27 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -120,44 +120,41 @@ aws-smithy-types = { version = "1", default-features = false, features = [
aws-endpoint = "0.60"
aws-types = "1"
axum = "=0.7.4" # TODO: 0.7.5+ does not work with current toolchain
etcd-client = { package = "madsim-etcd-client", version = "0.4" }
etcd-client = { package = "madsim-etcd-client", version = "0.5" } # etcd-client v0.13
futures-async-stream = "0.2.9"
hytra = "0.1"
rdkafka = { package = "madsim-rdkafka", version = "0.4.1", features = [
"cmake-build",
] }
hashbrown = { version = "0.14", features = ["ahash", "inline-more", "nightly"] }
criterion = { version = "0.5", features = ["async_futures"] }
tonic = { package = "madsim-tonic", version = "0.4.1" }
tonic = { package = "madsim-tonic", version = "0.4.2" }
tonic-build = { package = "madsim-tonic-build", version = "0.4.2" }
otlp-embedded = { git = "https://github.com/risingwavelabs/otlp-embedded", rev = "492c244e0be91feb659c0cd48a624bbd96045a33" }
prost = { version = "0.12" }
icelake = { git = "https://github.com/icelake-io/icelake", rev = "07d53893d7788b4e41fc11efad8a6be828405c31", features = [
"prometheus",
] }
arrow-array-iceberg = { package = "arrow-array", version = "52" }
arrow-schema-iceberg = { package = "arrow-schema", version = "52" }
arrow-buffer-iceberg = { package = "arrow-buffer", version = "52" }
arrow-cast-iceberg = { package = "arrow-cast", version = "52" }

# TODO
# After apache/iceberg-rust#411 is merged, we move to the upstream version.
iceberg = { git = "https://github.com/risingwavelabs/iceberg-rust.git", rev = "0c6e133e6f4655ff9ce4ad57b577dc7f692dd902" }
iceberg-catalog-rest = { git = "https://github.com/risingwavelabs/iceberg-rust.git", rev = "0c6e133e6f4655ff9ce4ad57b577dc7f692dd902" }
opendal = "0.47"
arrow-array = "50"
arrow-arith = "50"
arrow-cast = "50"
arrow-schema = "50"
arrow-buffer = "50"
arrow-flight = "50"
arrow-select = "50"
arrow-ord = "50"
arrow-row = "50"
arrow-array = "52"
arrow-arith = "52"
arrow-cast = "52"
arrow-schema = "52"
arrow-buffer = "52"
arrow-flight = "52"
arrow-select = "52"
arrow-ord = "52"
arrow-row = "52"
arrow-udf-js = "0.3.1"
arrow-udf-js-deno = { git = "https://github.com/risingwavelabs/arrow-udf.git", rev = "fa36365" }
# arrow-udf-js-deno = { git = "https://github.com/risingwavelabs/arrow-udf.git", rev = "d248f21" }
arrow-udf-wasm = { version = "0.2.2", features = ["build"] }
arrow-udf-python = "0.2"
arrow-udf-flight = "0.1"
arrow-udf-flight = "0.2"
arrow-array-deltalake = { package = "arrow-array", version = "48.0.1" }
arrow-buffer-deltalake = { package = "arrow-buffer", version = "48.0.1" }
arrow-cast-deltalake = { package = "arrow-cast", version = "48.0.1" }
Expand Down Expand Up @@ -330,19 +327,19 @@ debug = 1
# Patch third-party crates for deterministic simulation.
quanta = { git = "https://github.com/madsim-rs/quanta.git", rev = "948bdc3" }
getrandom = { git = "https://github.com/madsim-rs/getrandom.git", rev = "e79a7ae" }
tokio-stream = { git = "https://github.com/madsim-rs/tokio.git", rev = "fe39bb8e" }
tokio-stream = { git = "https://github.com/madsim-rs/tokio.git", rev = "0dd10556" }
tokio-retry = { git = "https://github.com/madsim-rs/rust-tokio-retry.git", rev = "95e2fd3" }
tokio-postgres = { git = "https://github.com/madsim-rs/rust-postgres.git", rev = "ac00d88" }
futures-timer = { git = "https://github.com/madsim-rs/futures-timer.git", rev = "05b33b4" }
# patch to remove preserve_order from serde_json
deno_core = { git = "https://github.com/bakjos/deno_core", rev = "9b241c6" }
# patch to user reqwest 0.12.2
deno_fetch = { git = "https://github.com/bakjos/deno", rev = "787a232" }
deno_http = { git = "https://github.com/bakjos/deno", rev = "787a232" }
deno_net = { git = "https://github.com/bakjos/deno", rev = "787a232" }
deno_tls = { git = "https://github.com/bakjos/deno", rev = "787a232" }
deno_web = { git = "https://github.com/bakjos/deno", rev = "787a232" }
deno_websocket = { git = "https://github.com/bakjos/deno", rev = "787a232" }
# # patch to remove preserve_order from serde_json
# deno_core = { git = "https://github.com/bakjos/deno_core", rev = "9b241c6" }
# # patch to user reqwest 0.12.2
# deno_fetch = { git = "https://github.com/bakjos/deno", rev = "787a232" }
# deno_http = { git = "https://github.com/bakjos/deno", rev = "787a232" }
# deno_net = { git = "https://github.com/bakjos/deno", rev = "787a232" }
# deno_tls = { git = "https://github.com/bakjos/deno", rev = "787a232" }
# deno_web = { git = "https://github.com/bakjos/deno", rev = "787a232" }
# deno_websocket = { git = "https://github.com/bakjos/deno", rev = "787a232" }
# patch to remove preserve_order from serde_json
bson = { git = "https://github.com/risingwavelabs/bson-rust", rev = "e5175ec" }

Expand Down
1 change: 0 additions & 1 deletion src/batch/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ normal = ["workspace-hack"]
[dependencies]
anyhow = "1"
arrow-array = { workspace = true }
arrow-array-iceberg = { workspace = true }
arrow-schema = { workspace = true }
assert_matches = "1"
async-recursion = "1"
Expand Down
4 changes: 2 additions & 2 deletions src/cmd_all/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@ repository = { workspace = true }
default = ["rw-static-link"]
rw-static-link = ["workspace-config/rw-static-link"]
rw-dynamic-link = ["workspace-config/rw-dynamic-link"]
all-udf = ["external-udf", "wasm-udf", "js-udf", "deno-udf", "python-udf"]
all-udf = ["external-udf", "wasm-udf", "js-udf", "python-udf"]
external-udf = ["risingwave_expr_impl/external-udf"]
wasm-udf = ["risingwave_expr_impl/wasm-udf"]
js-udf = ["risingwave_expr_impl/js-udf"]
deno-udf = ["risingwave_expr_impl/deno-udf"]
# deno-udf = ["risingwave_expr_impl/deno-udf"]
python-udf = ["risingwave_expr_impl/python-udf"]

[package.metadata.cargo-machete]
Expand Down
4 changes: 0 additions & 4 deletions src/common/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,16 +19,12 @@ anyhow = "1"
arc-swap = "1"
arrow-array = { workspace = true }
arrow-array-deltalake = { workspace = true }
arrow-array-iceberg = { workspace = true }
arrow-buffer = { workspace = true }
arrow-buffer-deltalake = { workspace = true }
arrow-buffer-iceberg = { workspace = true }
arrow-cast = { workspace = true }
arrow-cast-deltalake = { workspace = true }
arrow-cast-iceberg = { workspace = true }
arrow-schema = { workspace = true }
arrow-schema-deltalake = { workspace = true }
arrow-schema-iceberg = { workspace = true }
async-trait = "0.1"
auto_enums = { workspace = true }
auto_impl = "1"
Expand Down
20 changes: 6 additions & 14 deletions src/common/src/array/arrow/arrow_iceberg.rs
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,9 @@
use std::ops::{Div, Mul};
use std::sync::Arc;

use arrow_array_iceberg::{self as arrow_array, ArrayRef};
use arrow_buffer_iceberg::IntervalMonthDayNano as ArrowIntervalType;
use arrow_array::ArrayRef;
use arrow_buffer::IntervalMonthDayNano as ArrowIntervalType;
use num_traits::abs;
use {
arrow_buffer_iceberg as arrow_buffer, arrow_cast_iceberg as arrow_cast,
arrow_schema_iceberg as arrow_schema,
};

use crate::array::{Array, ArrayError, ArrayImpl, DataChunk, DataType, DecimalArray};
use crate::types::{Interval, StructType};
Expand Down Expand Up @@ -49,11 +45,7 @@ impl ArrowIntervalTypeTrait for ArrowIntervalType {
}
}

#[path = "./arrow_impl.rs"]
mod arrow_impl;

use arrow_impl::{FromArrow, ToArrow};

use super::arrow_udf::arrow_impl::{FromArrow, ToArrow};
use crate::array::arrow::ArrowIntervalTypeTrait;

pub struct IcebergArrowConvert;
Expand Down Expand Up @@ -175,11 +167,11 @@ impl FromArrow for IcebergArrowConvert {}
mod test {
use std::sync::Arc;

use arrow_array_iceberg::{ArrayRef, Decimal128Array};
use arrow_schema_iceberg::DataType;
use arrow_array::{ArrayRef, Decimal128Array};
use arrow_schema::DataType;

use super::arrow_impl::ToArrow;
use super::IcebergArrowConvert;
use crate::array::arrow::ToArrow;
use crate::array::{Decimal, DecimalArray};

#[test]
Expand Down
4 changes: 2 additions & 2 deletions src/common/src/array/arrow/arrow_udf.rs
Original file line number Diff line number Diff line change
Expand Up @@ -20,15 +20,15 @@

use std::sync::Arc;

use arrow_buffer::IntervalMonthDayNano as ArrowIntervalType;
pub use arrow_impl::{FromArrow, ToArrow};
use {arrow_array, arrow_buffer, arrow_cast, arrow_schema};
type ArrowIntervalType = i128;

use crate::array::{ArrayError, ArrayImpl, DataType, DecimalArray, JsonbArray};

#[expect(clippy::duplicate_mod)]
#[path = "./arrow_impl.rs"]
mod arrow_impl;
pub mod arrow_impl;

/// Arrow conversion for UDF.
#[derive(Default, Debug)]
Expand Down
2 changes: 1 addition & 1 deletion src/compute/src/rpc/service/monitor_service.rs
Original file line number Diff line number Diff line change
Expand Up @@ -390,7 +390,7 @@ pub mod grpc_middleware {
use either::Either;
use futures::Future;
use hyper::Body;
use tonic::transport::NamedService;
use tonic::server::NamedService;
use tower::{Layer, Service};

/// Manages the await-trees of `gRPC` requests that are currently served by the compute node.
Expand Down
33 changes: 23 additions & 10 deletions src/connector/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,8 @@ normal = ["workspace-hack"]
anyhow = "1"
apache-avro = { workspace = true }
arrow-array = { workspace = true }
arrow-array-iceberg = { workspace = true }
arrow-row = { workspace = true }
arrow-schema = { workspace = true }
arrow-schema-iceberg = { workspace = true }
arrow-select = { workspace = true }
assert_matches = "1"
async-compression = { version = "0.4.5", features = ["gzip", "tokio"] }
Expand Down Expand Up @@ -58,12 +56,15 @@ easy-ext = "1"
enum-as-inner = "0.6"
futures = { version = "0.3", default-features = false, features = ["alloc"] }
futures-async-stream = { workspace = true }
gcp-bigquery-client = "0.18.0"
gcp-bigquery-client = "0.20.0"
glob = "0.3"
google-cloud-bigquery = { version = "0.9.0", features = ["auth"] }
google-cloud-gax = "0.17.0"
google-cloud-googleapis = { version = "0.13", features = ["pubsub", "bigquery"] }
google-cloud-pubsub = "0.25"
google-cloud-bigquery = { version = "0.10.0", features = ["auth"] }
google-cloud-gax = "0.18.0"
google-cloud-googleapis = { version = "0.14", features = [
"pubsub",
"bigquery",
] }
google-cloud-pubsub = "0.27"
http = "0.2"
iceberg = { workspace = true }
iceberg-catalog-rest = { workspace = true }
Expand Down Expand Up @@ -114,7 +115,12 @@ rdkafka = { workspace = true, features = [
"gssapi",
"zstd",
] }
redis = { version = "0.25", features = ["aio", "tokio-comp", "async-std-comp","cluster-async"] }
redis = { version = "0.25", features = [
"aio",
"tokio-comp",
"async-std-comp",
"cluster-async",
] }
regex = "1.4"
reqwest = { version = "0.12.2", features = ["json", "stream"] }
risingwave_common = { workspace = true }
Expand Down Expand Up @@ -146,7 +152,14 @@ strum_macros = "0.26"
tempfile = "3"
thiserror = "1"
thiserror-ext = { workspace = true }
tiberius = { version = "0.12", default-features = false, features = ["chrono", "time", "tds73", "rust_decimal", "bigdecimal", "rustls"] }
tiberius = { version = "0.12", default-features = false, features = [
"chrono",
"time",
"tds73",
"rust_decimal",
"bigdecimal",
"rustls",
] }
time = "0.3.30"
tokio = { version = "0.2", package = "madsim-tokio", features = [
"rt",
Expand All @@ -168,7 +181,7 @@ url = "2"
urlencoding = "2"
uuid = { version = "1", features = ["v4", "fast-rng"] }
with_options = { path = "./with_options" }
yup-oauth2 = "8.3"
yup-oauth2 = "9.0"

[target.'cfg(not(madsim))'.dependencies]
workspace-hack = { path = "../workspace-hack" }
Expand Down
1 change: 0 additions & 1 deletion src/connector/src/error.rs
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,6 @@ def_anyhow_newtype! {
iceberg::Error => "IcebergV2 error",
redis::RedisError => "Redis error",
arrow_schema::ArrowError => "Arrow error",
arrow_schema_iceberg::ArrowError => "Arrow error",
google_cloud_pubsub::client::google_cloud_auth::error::Error => "Google Cloud error",
rumqttc::tokio_rustls::rustls::Error => "TLS error",
rumqttc::v5::ClientError => "MQTT error",
Expand Down
4 changes: 2 additions & 2 deletions src/connector/src/sink/iceberg/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ use std::ops::Deref;
use std::sync::Arc;

use anyhow::{anyhow, Context};
use arrow_schema_iceberg::{
use arrow_schema::{
DataType as ArrowDataType, Field as ArrowField, Fields, Schema as ArrowSchema, SchemaRef,
};
use async_trait::async_trait;
Expand Down Expand Up @@ -1189,7 +1189,7 @@ mod test {

#[test]
fn test_compatible_arrow_schema() {
use arrow_schema_iceberg::{DataType as ArrowDataType, Field as ArrowField};
use arrow_schema::{DataType as ArrowDataType, Field as ArrowField};

use super::*;
let risingwave_schema = Schema::new(vec![
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.

use arrow_array_iceberg::RecordBatch;
use arrow_schema_iceberg::SchemaRef;
use arrow_array::RecordBatch;
use arrow_schema::SchemaRef;
use icelake::io_v2::{
BaseFileWriter, BaseFileWriterBuilder, BaseFileWriterMetrics, CurrentFileStatus, FileWriter,
FileWriterBuilder,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.

use arrow_schema_iceberg::SchemaRef;
use arrow_schema::SchemaRef;
use icelake::io_v2::{
FanoutPartitionedWriter, FanoutPartitionedWriterBuilder, FanoutPartitionedWriterMetrics,
IcebergWriter, IcebergWriterBuilder,
Expand Down Expand Up @@ -75,7 +75,7 @@ impl<B: IcebergWriterBuilder> MonitoredFanoutPartitionedWriter<B> {
impl<B: IcebergWriterBuilder> IcebergWriter for MonitoredFanoutPartitionedWriter<B> {
type R = <FanoutPartitionedWriter<B> as IcebergWriter>::R;

async fn write(&mut self, batch: arrow_array_iceberg::RecordBatch) -> Result<()> {
async fn write(&mut self, batch: arrow_array::RecordBatch) -> Result<()> {
self.inner.write(batch).await?;
self.update_metrics()?;
Ok(())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ impl<B: FileWriterBuilder> IcebergWriterBuilder<PositionDeleteInput>
{
type R = MonitoredPositionDeleteWriter<B>;

async fn build(self, schema: &arrow_schema_iceberg::SchemaRef) -> Result<Self::R> {
async fn build(self, schema: &arrow_schema::SchemaRef) -> Result<Self::R> {
let writer = self.inner.build(schema).await?;
Ok(MonitoredPositionDeleteWriter {
writer,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@
// See the License for the specific language governing permissions and
// limitations under the License.

use arrow_array_iceberg::RecordBatch;
use arrow_schema_iceberg::SchemaRef;
use arrow_array::RecordBatch;
use arrow_schema::SchemaRef;
use async_trait::async_trait;
use icelake::io_v2::{IcebergWriter, IcebergWriterBuilder};
use icelake::Result;
Expand Down
2 changes: 1 addition & 1 deletion src/connector/src/source/pulsar/source/reader.rs
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
use std::collections::HashMap;

use anyhow::Context;
use arrow_array_iceberg::{Int32Array, Int64Array, RecordBatch};
use arrow_array::{Int32Array, Int64Array, RecordBatch};
use async_trait::async_trait;
use futures::StreamExt;
use futures_async_stream::try_stream;
Expand Down
7 changes: 3 additions & 4 deletions src/expr/impl/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ normal = ["workspace-hack", "ctor"]
[features]
external-udf = ["arrow-udf-flight", "arrow-flight", "tonic"]
js-udf = ["arrow-udf-js"]
deno-udf = ["arrow-udf-js-deno", "zstd"]
# deno-udf = ["arrow-udf-js-deno", "zstd"]
python-udf = ["arrow-udf-python"]
wasm-udf = ["arrow-udf-wasm", "zstd"]

Expand All @@ -28,10 +28,9 @@ anyhow = "1"
arrow-array = { workspace = true }
arrow-flight = { workspace = true, optional = true }
arrow-schema = { workspace = true }
arrow-schema-iceberg = { workspace = true }
arrow-udf-flight = { workspace = true, optional = true }
arrow-udf-js = { workspace = true, optional = true }
arrow-udf-js-deno = { workspace = true, optional = true }
# arrow-udf-js-deno = { workspace = true, optional = true }
arrow-udf-python = { workspace = true, optional = true }
arrow-udf-wasm = { workspace = true, optional = true }
async-trait = "0.1"
Expand Down Expand Up @@ -72,7 +71,7 @@ sql-json-path = { version = "0.1", features = ["jsonbb"] }
thiserror = "1"
thiserror-ext = { workspace = true }
tokio = { version = "0.2", package = "madsim-tokio", features = ["time"] }
tonic = { version = "0.10", optional = true }
tonic = { version = "0.11", optional = true }
tracing = "0.1"
zstd = { version = "0.13", default-features = false, optional = true }

Expand Down
4 changes: 2 additions & 2 deletions src/expr/impl/src/scalar/external/iceberg.rs
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@ use thiserror_ext::AsReport;
pub struct IcebergTransform {
child: BoxedExpression,
transform: BoxedTransformFunction,
input_arrow_type: arrow_schema_iceberg::DataType,
output_arrow_field: arrow_schema_iceberg::Field,
input_arrow_type: arrow_schema::DataType,
output_arrow_field: arrow_schema::Field,
return_type: DataType,
}

Expand Down
Loading
Loading