Skip to content

Commit fb790fb

Browse files
Merge branch 'apache:main' into avro-code-nulls
2 parents 19f8848 + d0fa24e commit fb790fb

File tree

21 files changed

+1371
-93
lines changed

21 files changed

+1371
-93
lines changed

.github/workflows/arrow_flight.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ jobs:
6060
cargo test -p arrow-flight --all-features
6161
- name: Test --examples
6262
run: |
63-
cargo test -p arrow-flight --features=flight-sql,tls --examples
63+
cargo test -p arrow-flight --features=flight-sql,tls-ring --examples
6464
6565
vendor:
6666
name: Verify Vendored Code

arrow-array/src/builder/mod.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -447,6 +447,7 @@ pub fn make_builder(datatype: &DataType, capacity: usize) -> Box<dyn ArrayBuilde
447447
DataType::Float64 => Box::new(Float64Builder::with_capacity(capacity)),
448448
DataType::Binary => Box::new(BinaryBuilder::with_capacity(capacity, 1024)),
449449
DataType::LargeBinary => Box::new(LargeBinaryBuilder::with_capacity(capacity, 1024)),
450+
DataType::BinaryView => Box::new(BinaryViewBuilder::with_capacity(capacity)),
450451
DataType::FixedSizeBinary(len) => {
451452
Box::new(FixedSizeBinaryBuilder::with_capacity(capacity, *len))
452453
}
@@ -464,6 +465,7 @@ pub fn make_builder(datatype: &DataType, capacity: usize) -> Box<dyn ArrayBuilde
464465
),
465466
DataType::Utf8 => Box::new(StringBuilder::with_capacity(capacity, 1024)),
466467
DataType::LargeUtf8 => Box::new(LargeStringBuilder::with_capacity(capacity, 1024)),
468+
DataType::Utf8View => Box::new(StringViewBuilder::with_capacity(capacity)),
467469
DataType::Date32 => Box::new(Date32Builder::with_capacity(capacity)),
468470
DataType::Date64 => Box::new(Date64Builder::with_capacity(capacity)),
469471
DataType::Time32(TimeUnit::Second) => {

arrow-flight/Cargo.toml

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ prost = { version = "0.13.1", default-features = false, features = ["prost-deriv
4848
# For Timestamp type
4949
prost-types = { version = "0.13.1", default-features = false }
5050
tokio = { version = "1.0", default-features = false, features = ["macros", "rt", "rt-multi-thread"], optional = true }
51-
tonic = { version = "0.12.3", default-features = false, features = ["transport", "codegen", "prost"] }
51+
tonic = { version = "0.13", default-features = false, features = ["transport", "codegen", "prost", "router"] }
5252

5353
# CLI-related dependencies
5454
anyhow = { version = "1.0", optional = true }
@@ -64,9 +64,13 @@ default = []
6464
flight-sql = ["dep:arrow-arith", "dep:arrow-data", "dep:arrow-ord", "dep:arrow-row", "dep:arrow-select", "dep:arrow-string", "dep:once_cell", "dep:paste"]
6565
# TODO: Remove in the next release
6666
flight-sql-experimental = ["flight-sql"]
67-
tls = ["tonic/tls"]
67+
tls-aws-lc= ["tonic/tls-aws-lc"]
68+
tls-native-roots = ["tonic/tls-native-roots"]
69+
tls-ring = ["tonic/tls-ring"]
70+
tls-webpki-roots = ["tonic/tls-webpki-roots"]
71+
6872
# Enable CLI tools
69-
cli = ["arrow-array/chrono-tz", "arrow-cast/prettyprint", "tonic/tls-webpki-roots", "dep:anyhow", "dep:clap", "dep:tracing-log", "dep:tracing-subscriber"]
73+
cli = ["arrow-array/chrono-tz", "arrow-cast/prettyprint", "tonic/tls-webpki-roots", "dep:anyhow", "dep:clap", "dep:tracing-log", "dep:tracing-subscriber", "dep:tokio"]
7074

7175
[dev-dependencies]
7276
arrow-cast = { workspace = true, features = ["prettyprint"] }
@@ -85,18 +89,18 @@ uuid = { version = "1.10.0", features = ["v4"] }
8589

8690
[[example]]
8791
name = "flight_sql_server"
88-
required-features = ["flight-sql", "tls"]
92+
required-features = ["flight-sql", "tls-ring"]
8993

9094
[[bin]]
9195
name = "flight_sql_client"
92-
required-features = ["cli", "flight-sql", "tls"]
96+
required-features = ["cli", "flight-sql", "tls-ring"]
9397

9498
[[test]]
9599
name = "flight_sql_client"
96100
path = "tests/flight_sql_client.rs"
97-
required-features = ["flight-sql", "tls"]
101+
required-features = ["flight-sql", "tls-ring"]
98102

99103
[[test]]
100104
name = "flight_sql_client_cli"
101105
path = "tests/flight_sql_client_cli.rs"
102-
required-features = ["cli", "flight-sql", "tls"]
106+
required-features = ["cli", "flight-sql", "tls-ring"]

arrow-flight/README.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,14 @@ that demonstrate how to build a Flight server implemented with [tonic](https://d
4545

4646
- `flight-sql`: Support for [Apache Arrow FlightSQL], a protocol for interacting with SQL databases.
4747

48-
- `tls`: Enables `tls` on `tonic`
48+
You can enable TLS using the following features (not enabled by default)
49+
50+
- `tls-aws-lc`: enables [tonic feature] `tls-aws-lc`
51+
- `tls-native-roots`: enables [tonic feature] `tls-native-roots`
52+
- `tls-ring`: enables [tonic feature] `tls-ring`
53+
- `tls-webpki`: enables [tonic feature] `tls-webpki-roots`
54+
55+
[tonic feature]: https://docs.rs/tonic/latest/tonic/#feature-flags
4956

5057
## CLI
5158

arrow-flight/examples/flight_sql_server.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -814,7 +814,7 @@ mod tests {
814814
async fn bind_tcp() -> (TcpIncoming, SocketAddr) {
815815
let listener = TcpListener::bind("0.0.0.0:0").await.unwrap();
816816
let addr = listener.local_addr().unwrap();
817-
let incoming = TcpIncoming::from_listener(listener, true, None).unwrap();
817+
let incoming = TcpIncoming::from(listener).with_nodelay(Some(true));
818818
(incoming, addr)
819819
}
820820

arrow-flight/gen/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,4 +33,4 @@ publish = false
3333
# Pin specific version of the tonic-build dependencies to avoid auto-generated
3434
# (and checked in) arrow.flight.protocol.rs from changing
3535
prost-build = { version = "=0.13.5", default-features = false }
36-
tonic-build = { version = "=0.12.3", default-features = false, features = ["transport", "prost"] }
36+
tonic-build = { version = "=0.13.1", default-features = false, features = ["transport", "prost"] }

arrow-flight/src/arrow.flight.protocol.rs

Lines changed: 8 additions & 6 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

arrow-integration-testing/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ prost = { version = "0.13", default-features = false }
4343
serde = { version = "1.0", default-features = false, features = ["rc", "derive"] }
4444
serde_json = { version = "1.0", default-features = false, features = ["std"] }
4545
tokio = { version = "1.0", default-features = false, features = [ "rt-multi-thread"] }
46-
tonic = { version = "0.12", default-features = false }
46+
tonic = { version = "0.13", default-features = false }
4747
tracing-subscriber = { version = "0.3.1", default-features = false, features = ["fmt"], optional = true }
4848
flate2 = { version = "1", default-features = false, features = ["rust_backend"] }
4949

0 commit comments

Comments
 (0)