Skip to content

Commit 59dcc36

Browse files
authored
Update remaining crates to rust 2024 edition (apache#19361)
## Which issue does this PR close? Closes apache#15804 ## Rationale for this change Now that we are on MSRV 1.88 we can use rust edition 2024, which brings let chains and other nice features. It also improves `unsafe` checking. In order to introduce these changes in slower way instead of one massive PR that is too difficult to manage we are updating a few crates at a time. ## What changes are included in this PR? Updates these crates to 2024. - datafusion-benchmarks - datafusion-ffi - datafusion-sqllogictest - datafusion-examples ## Are these changes tested? Existing unit tests. There are no functional code changes. ## Are there any user-facing changes? None. ## Note It is recommended to review with the ignore whitespace setting: https://github.com/apache/datafusion/pull/19361/files?w=1
1 parent 7900cd6 commit 59dcc36

File tree

146 files changed

+1603
-1273
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

146 files changed

+1603
-1273
lines changed

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ resolver = "2"
7171

7272
[workspace.package]
7373
authors = ["Apache DataFusion <[email protected]>"]
74-
edition = "2021"
74+
edition = "2024"
7575
homepage = "https://datafusion.apache.org"
7676
license = "Apache-2.0"
7777
readme = "README.md"

benchmarks/src/bin/external_aggr.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,16 +33,16 @@ use datafusion::datasource::listing::{
3333
};
3434
use datafusion::datasource::{MemTable, TableProvider};
3535
use datafusion::error::Result;
36+
use datafusion::execution::SessionStateBuilder;
3637
use datafusion::execution::memory_pool::FairSpillPool;
3738
use datafusion::execution::runtime_env::RuntimeEnvBuilder;
38-
use datafusion::execution::SessionStateBuilder;
3939
use datafusion::physical_plan::display::DisplayableExecutionPlan;
4040
use datafusion::physical_plan::{collect, displayable};
4141
use datafusion::prelude::*;
4242
use datafusion_benchmarks::util::{BenchmarkRun, CommonOpt, QueryResult};
4343
use datafusion_common::instant::Instant;
4444
use datafusion_common::utils::get_available_parallelism;
45-
use datafusion_common::{exec_err, DEFAULT_PARQUET_EXTENSION};
45+
use datafusion_common::{DEFAULT_PARQUET_EXTENSION, exec_err};
4646
use datafusion_common::{human_readable_size, units};
4747

4848
#[derive(Debug, StructOpt)]

benchmarks/src/bin/mem_profile.rs

Lines changed: 12 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -199,21 +199,18 @@ fn run_query(args: &[String], results: &mut Vec<QueryResult>) -> Result<()> {
199199

200200
// Look for lines that contain execution time / memory stats
201201
while let Some(line) = iter.next() {
202-
if let Some((query, duration_ms)) = parse_query_time(line) {
203-
if let Some(next_line) = iter.peek() {
204-
if let Some((peak_rss, peak_commit, page_faults)) =
205-
parse_vm_line(next_line)
206-
{
207-
results.push(QueryResult {
208-
query,
209-
duration_ms,
210-
peak_rss,
211-
peak_commit,
212-
page_faults,
213-
});
214-
break;
215-
}
216-
}
202+
if let Some((query, duration_ms)) = parse_query_time(line)
203+
&& let Some(next_line) = iter.peek()
204+
&& let Some((peak_rss, peak_commit, page_faults)) = parse_vm_line(next_line)
205+
{
206+
results.push(QueryResult {
207+
query,
208+
duration_ms,
209+
peak_rss,
210+
peak_commit,
211+
page_faults,
212+
});
213+
break;
217214
}
218215
}
219216

benchmarks/src/cancellation.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,22 +25,22 @@ use arrow::array::Array;
2525
use arrow::datatypes::DataType;
2626
use arrow::record_batch::RecordBatch;
2727
use datafusion::common::{Result, ScalarValue};
28-
use datafusion::datasource::file_format::parquet::ParquetFormat;
2928
use datafusion::datasource::file_format::FileFormat;
29+
use datafusion::datasource::file_format::parquet::ParquetFormat;
3030
use datafusion::datasource::listing::{ListingOptions, ListingTableUrl};
31-
use datafusion::execution::object_store::ObjectStoreUrl;
3231
use datafusion::execution::TaskContext;
33-
use datafusion::physical_plan::coalesce_partitions::CoalescePartitionsExec;
32+
use datafusion::execution::object_store::ObjectStoreUrl;
3433
use datafusion::physical_plan::ExecutionPlan;
34+
use datafusion::physical_plan::coalesce_partitions::CoalescePartitionsExec;
3535
use datafusion::prelude::*;
3636
use datafusion_common::instant::Instant;
3737
use futures::TryStreamExt;
3838
use object_store::ObjectStore;
39-
use parquet::arrow::async_writer::ParquetObjectWriter;
4039
use parquet::arrow::AsyncArrowWriter;
40+
use parquet::arrow::async_writer::ParquetObjectWriter;
41+
use rand::Rng;
4142
use rand::distr::Alphanumeric;
4243
use rand::rngs::ThreadRng;
43-
use rand::Rng;
4444
use structopt::StructOpt;
4545
use tokio::runtime::Runtime;
4646
use tokio_util::sync::CancellationToken;

benchmarks/src/clickbench.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ use std::fs;
1919
use std::io::ErrorKind;
2020
use std::path::{Path, PathBuf};
2121

22-
use crate::util::{print_memory_stats, BenchmarkRun, CommonOpt, QueryResult};
22+
use crate::util::{BenchmarkRun, CommonOpt, QueryResult, print_memory_stats};
2323
use datafusion::logical_expr::{ExplainFormat, ExplainOption};
2424
use datafusion::{
2525
error::{DataFusionError, Result},
@@ -156,7 +156,9 @@ impl RunOpt {
156156
.any(|opt| opt.contains("prefer_existing_sort=true"));
157157

158158
if !has_prefer_sort {
159-
println!("ℹ️ Consider using -c datafusion.optimizer.prefer_existing_sort=true");
159+
println!(
160+
"ℹ️ Consider using -c datafusion.optimizer.prefer_existing_sort=true"
161+
);
160162
println!("ℹ️ to optimize queries while maintaining parallelism");
161163
}
162164
}

benchmarks/src/h2o.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,11 @@
2020
//! - [H2O AI Benchmark](https://duckdb.org/2023/04/14/h2oai.html)
2121
//! - [Extended window function benchmark](https://duckdb.org/2024/06/26/benchmarks-over-time.html#window-functions-benchmark)
2222
23-
use crate::util::{print_memory_stats, BenchmarkRun, CommonOpt};
23+
use crate::util::{BenchmarkRun, CommonOpt, print_memory_stats};
2424
use datafusion::logical_expr::{ExplainFormat, ExplainOption};
2525
use datafusion::{error::Result, prelude::SessionContext};
2626
use datafusion_common::{
27-
exec_datafusion_err, instant::Instant, internal_err, DataFusionError, TableReference,
27+
DataFusionError, TableReference, exec_datafusion_err, instant::Instant, internal_err,
2828
};
2929
use std::path::{Path, PathBuf};
3030
use structopt::StructOpt;

benchmarks/src/hj.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ use crate::util::{BenchmarkRun, CommonOpt, QueryResult};
1919
use datafusion::physical_plan::execute_stream;
2020
use datafusion::{error::Result, prelude::SessionContext};
2121
use datafusion_common::instant::Instant;
22-
use datafusion_common::{exec_datafusion_err, exec_err, DataFusionError};
22+
use datafusion_common::{DataFusionError, exec_datafusion_err, exec_err};
2323
use structopt::StructOpt;
2424

2525
use futures::StreamExt;

benchmarks/src/imdb/convert.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ use structopt::StructOpt;
2626

2727
use datafusion::common::not_impl_err;
2828

29-
use super::get_imdb_table_schema;
3029
use super::IMDB_TABLES;
30+
use super::get_imdb_table_schema;
3131

3232
#[derive(Debug, StructOpt)]
3333
pub struct ConvertOpt {

benchmarks/src/imdb/run.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,16 @@ use std::path::PathBuf;
1919
use std::sync::Arc;
2020

2121
use super::{
22-
get_imdb_table_schema, get_query_sql, IMDB_QUERY_END_ID, IMDB_QUERY_START_ID,
23-
IMDB_TABLES,
22+
IMDB_QUERY_END_ID, IMDB_QUERY_START_ID, IMDB_TABLES, get_imdb_table_schema,
23+
get_query_sql,
2424
};
25-
use crate::util::{print_memory_stats, BenchmarkRun, CommonOpt, QueryResult};
25+
use crate::util::{BenchmarkRun, CommonOpt, QueryResult, print_memory_stats};
2626

2727
use arrow::record_batch::RecordBatch;
2828
use arrow::util::pretty::{self, pretty_format_batches};
29+
use datafusion::datasource::file_format::FileFormat;
2930
use datafusion::datasource::file_format::csv::CsvFormat;
3031
use datafusion::datasource::file_format::parquet::ParquetFormat;
31-
use datafusion::datasource::file_format::FileFormat;
3232
use datafusion::datasource::listing::{
3333
ListingOptions, ListingTable, ListingTableConfig, ListingTableUrl,
3434
};

benchmarks/src/nlj.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ use crate::util::{BenchmarkRun, CommonOpt, QueryResult};
1919
use datafusion::physical_plan::execute_stream;
2020
use datafusion::{error::Result, prelude::SessionContext};
2121
use datafusion_common::instant::Instant;
22-
use datafusion_common::{exec_datafusion_err, exec_err, DataFusionError};
22+
use datafusion_common::{DataFusionError, exec_datafusion_err, exec_err};
2323
use structopt::StructOpt;
2424

2525
use futures::StreamExt;
@@ -268,8 +268,8 @@ impl RunOpt {
268268
let elapsed = start.elapsed();
269269

270270
println!(
271-
"Query {query_name} iteration {i} returned {row_count} rows in {elapsed:?}"
272-
);
271+
"Query {query_name} iteration {i} returned {row_count} rows in {elapsed:?}"
272+
);
273273

274274
query_results.push(QueryResult { elapsed, row_count });
275275
}

0 commit comments

Comments
 (0)