This is an automated email from the ASF dual-hosted git repository.
mgrigorov pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/datafusion-ballista.git
The following commit(s) were added to refs/heads/main by this push:
new f250c0ef7 minor: [REST] add datafusion version info (#1512)
f250c0ef7 is described below
commit f250c0ef7710875ac81bcc9aee1ddc7a59973098
Author: Marko Milenković <[email protected]>
AuthorDate: Mon Mar 16 08:40:11 2026 +0000
minor: [REST] add datafusion version info (#1512)
---
ballista/executor/src/executor_process.rs | 5 ++++-
ballista/scheduler/src/api/handlers.rs | 5 +++++
ballista/scheduler/src/scheduler_process.rs | 5 ++++-
ballista/scheduler/src/standalone.rs | 5 ++++-
4 files changed, 17 insertions(+), 3 deletions(-)
diff --git a/ballista/executor/src/executor_process.rs
b/ballista/executor/src/executor_process.rs
index ef57e2e7c..aca1ed126 100644
--- a/ballista/executor/src/executor_process.rs
+++ b/ballista/executor/src/executor_process.rs
@@ -25,6 +25,7 @@ use std::time::{Duration, Instant, UNIX_EPOCH};
use arrow_flight::flight_service_server::FlightServiceServer;
use ballista_core::registry::BallistaFunctionRegistry;
+use datafusion::DATAFUSION_VERSION;
use datafusion_proto::logical_plan::LogicalExtensionCodec;
use datafusion_proto::physical_plan::PhysicalExtensionCodec;
use futures::StreamExt;
@@ -223,7 +224,9 @@ pub async fn start_executor_process(
let task_scheduling_policy = opt.task_scheduling_policy;
// assign this executor an unique ID
let executor_id = Uuid::new_v4().to_string();
- info!("Executor starting ... (Datafusion Ballista {BALLISTA_VERSION})");
+ info!(
+ "Ballista Executor v{BALLISTA_VERSION} (DataFusion
v{DATAFUSION_VERSION}) starting ..."
+ );
info!("Executor id: {executor_id}");
info!("Executor working directory: {work_dir}");
info!("Executor number of concurrent tasks: {concurrent_tasks}");
diff --git a/ballista/scheduler/src/api/handlers.rs
b/ballista/scheduler/src/api/handlers.rs
index 1d79a5228..64ba3667a 100644
--- a/ballista/scheduler/src/api/handlers.rs
+++ b/ballista/scheduler/src/api/handlers.rs
@@ -21,6 +21,7 @@ use axum::{
};
use ballista_core::BALLISTA_VERSION;
use ballista_core::serde::protobuf::job_status::Status;
+use datafusion::DATAFUSION_VERSION;
use datafusion::physical_plan::metrics::{MetricValue, MetricsSet, Time};
use datafusion_proto::logical_plan::AsLogicalPlan;
use datafusion_proto::physical_plan::AsExecutionPlan;
@@ -38,6 +39,7 @@ use std::time::Duration;
struct SchedulerStateResponse {
started: u128,
version: &'static str,
+ datafusion_version: &'static str,
substrait_support: bool,
keda_support: bool,
prometheus_support: bool,
@@ -51,6 +53,7 @@ struct SchedulerStateResponse {
#[derive(Debug, serde::Serialize)]
struct SchedulerVersionResponse {
version: &'static str,
+ datafusion_version: &'static str,
}
#[derive(Debug, serde::Serialize)]
pub struct ExecutorMetaResponse {
@@ -106,6 +109,7 @@ pub async fn get_scheduler_state<
let response = SchedulerStateResponse {
started: data_server.start_time,
version: BALLISTA_VERSION,
+ datafusion_version: DATAFUSION_VERSION,
substrait_support: cfg!(feature = "substrait"),
keda_support: cfg!(feature = "keda-scaler"),
prometheus_support: cfg!(feature = "prometheus-metrics"),
@@ -124,6 +128,7 @@ pub async fn get_scheduler_state<
pub async fn get_scheduler_version() -> impl IntoResponse {
let response = SchedulerVersionResponse {
version: BALLISTA_VERSION,
+ datafusion_version: DATAFUSION_VERSION,
};
Json(response)
}
diff --git a/ballista/scheduler/src/scheduler_process.rs
b/ballista/scheduler/src/scheduler_process.rs
index 92f8f1c8e..24bc58b9b 100644
--- a/ballista/scheduler/src/scheduler_process.rs
+++ b/ballista/scheduler/src/scheduler_process.rs
@@ -35,6 +35,7 @@ use
ballista_core::serde::protobuf::scheduler_grpc_server::SchedulerGrpcServer;
use ballista_core::serde::{
BallistaCodec, BallistaLogicalExtensionCodec,
BallistaPhysicalExtensionCodec,
};
+use datafusion::DATAFUSION_VERSION;
use datafusion_proto::logical_plan::AsLogicalPlan;
use datafusion_proto::physical_plan::AsExecutionPlan;
use datafusion_proto::protobuf::{LogicalPlanNode, PhysicalPlanNode};
@@ -171,7 +172,9 @@ pub async fn start_server(
address: SocketAddr,
config: Arc<SchedulerConfig>,
) -> ballista_core::error::Result<()> {
- info!("Ballista v{BALLISTA_VERSION} Scheduler listening on {address:?}");
+ info!(
+ "Ballista Scheduler v{BALLISTA_VERSION} (DataFusion
v{DATAFUSION_VERSION}) listening on {address:?}"
+ );
let scheduler =
create_scheduler::<LogicalPlanNode, PhysicalPlanNode>(cluster,
config).await?;
diff --git a/ballista/scheduler/src/standalone.rs
b/ballista/scheduler/src/standalone.rs
index 553262d0c..a6b6f2693 100644
--- a/ballista/scheduler/src/standalone.rs
+++ b/ballista/scheduler/src/standalone.rs
@@ -30,6 +30,7 @@ use ballista_core::{
BALLISTA_VERSION, error::Result,
serde::protobuf::scheduler_grpc_server::SchedulerGrpcServer,
};
+use datafusion::DATAFUSION_VERSION;
use datafusion::execution::SessionState;
use datafusion::prelude::SessionConfig;
use datafusion_proto::protobuf::LogicalPlanNode;
@@ -104,7 +105,9 @@ pub async fn new_standalone_scheduler_with_builder(
// Let the OS assign a random, free port
let listener = TcpListener::bind("localhost:0").await?;
let addr = listener.local_addr()?;
- info!("Ballista v{BALLISTA_VERSION} Rust Scheduler listening on {addr:?}");
+ info!(
+ "Ballista Scheduler v{BALLISTA_VERSION} (DataFusion
v{DATAFUSION_VERSION}) listening on {addr:?}"
+ );
tokio::spawn(
create_grpc_server(&GrpcServerConfig::default())
.add_service(server)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]