Skip to content

Commit 2810655

Browse files
committed
chore: use default_request_builder_concurrency_limit
1 parent 02b4cd5 commit 2810655

File tree

1 file changed

+15
-9
lines changed

1 file changed

+15
-9
lines changed

src/sinks/delta_lake/sink.rs

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,13 @@
33
//! This module implements the main sink that orchestrates the flow of events
44
//! from Vector to Delta Lake tables.
55
6-
use std::num::NonZeroUsize;
6+
use std::sync::Arc;
7+
8+
use tracing::Span;
79

810
use crate::sinks::prelude::*;
911
use crate::sinks::util::builder::SinkBuilderExt;
12+
use crate::sinks::util::request_builder::default_request_builder_concurrency_limit;
1013

1114
use super::request_builder::{DeltaLakeRequest, DeltaLakeRequestBuilder};
1215

@@ -48,18 +51,22 @@ where
4851

4952
async fn run_inner(self: Box<Self>, input: BoxStream<'_, Event>) -> Result<(), ()> {
5053
let batch_settings = self.batch_settings.as_byte_size_config();
51-
let request_builder = self.request_builder;
52-
let concurrency = NonZeroUsize::new(8).expect("static");
54+
let request_builder = Arc::new(self.request_builder);
55+
let concurrency = default_request_builder_concurrency_limit();
56+
57+
// Preserve span context for tracing propagation into concurrent tasks
58+
let span = Arc::new(Span::current());
5359

5460
input
55-
// Batch events by size/time
5661
.batched(batch_settings)
57-
// Build requests (convert directly to RecordBatch - no Parquet round-trip)
5862
.concurrent_map(concurrency, move |events| {
59-
let builder = request_builder.clone();
60-
Box::pin(async move { builder.build_request(events) })
63+
let builder = Arc::clone(&request_builder);
64+
let span = Arc::clone(&span);
65+
Box::pin(async move {
66+
let _entered = span.enter();
67+
builder.build_request(events)
68+
})
6169
})
62-
// Filter out failed request builds
6370
.filter_map(|request| async {
6471
match request {
6572
Err(error) => {
@@ -69,7 +76,6 @@ where
6976
Ok(req) => Some(req),
7077
}
7178
})
72-
// Send to Delta Lake service
7379
.into_driver(self.service)
7480
.run()
7581
.await

0 commit comments

Comments
 (0)