GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — [connectors] Recover Kafka output transactions through broker outages · feldera/feldera@1ae5241

File tree

Expand file treeCollapse file tree
Open diff view settings
Filter options
  • crates/connectors/src
    • controller.rs
    • transport.rs
    • transport
      • kafka.rs
      • kafka
        • ft.rs
        • ft
          • output.rs
          • output
            • tests.rs
            • tests
              • proxy.rs
              • real.rs
          • spool.rs
          • test.rs
        • metrics.rs
        • nonft.rs
        • nonft
          • output.rs
  • docs.feldera.com/docs
    • changelog.md
    • connectors/sinks
      • kafka.md
Expand file treeCollapse file tree
Open diff view settings
Collapse file

‎crates/connectors/src/controller.rs‎

Copy file name to clipboardExpand all lines: crates/connectors/src/controller.rs
+1Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8577,6 +8577,7 @@ impl ControllerInner {
85778577
endpoint_name,
85788578
self.fault_tolerance == Some(FtModel::ExactlyOnce),
85798579
&self.secrets_dir,
8580+
self.storage_path.as_deref(),
85808581
self.shutdown_token().clone(),
85818582
)
85828583
.map_err(|e| ControllerError::output_transport_error(endpoint_name, true, e))?;
Collapse file

‎crates/connectors/src/transport.rs‎

Copy file name to clipboardExpand all lines: crates/connectors/src/transport.rs
+7-1Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -195,6 +195,9 @@ pub fn input_transport_config_to_endpoint(
195195
/// waits on something outside the pipeline uses it to stop waiting when the
196196
/// pipeline goes down.
197197
///
198+
/// `storage_path` is the pipeline's storage directory, if it has one on the
199+
/// local file system. An endpoint that spills to disk uses it.
200+
///
198201
/// Returns an error if there is a invalid configuration for the endpoint.
199202
/// Returns `None` if the transport configuration variant is incompatible with an output endpoint.
200203
#[allow(unused_variables)]
@@ -203,6 +206,7 @@ pub fn output_transport_config_to_endpoint(
203206
endpoint_name: &str,
204207
fault_tolerant: bool,
205208
secrets_dir: &Path,
209+
storage_path: Option<&Path>,
206210
shutdown: CancellationToken,
207211
) -> AnyResult<Option<Box<dyn OutputEndpoint>>> {
208212
let config = resolve_secret_references_via_json(secrets_dir, config)?;
@@ -216,7 +220,9 @@ pub fn output_transport_config_to_endpoint(
216220
shutdown,
217221
)?))),
218222
true => Ok(Some(Box::new(KafkaFtOutputEndpoint::new(
219-
config, shutdown,
223+
config,
224+
shutdown,
225+
storage_path.map(Path::to_owned),
220226
)?))),
221227
},
222228
#[cfg(feature = "with-redis")]
Collapse file

‎crates/connectors/src/transport/kafka.rs‎

Copy file name to clipboardExpand all lines: crates/connectors/src/transport/kafka.rs
+1Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ pub use ft::{KafkaFtInputEndpoint, KafkaFtOutputEndpoint};
3838
pub use nonft::KafkaOutputEndpoint;
3939

4040
pub(crate) mod ft;
41+
pub(crate) mod metrics;
4142
mod nonft;
4243

4344
const MAX_POLLING_INTERVAL: Duration = Duration::from_millis(5000);
Collapse file

‎crates/connectors/src/transport/kafka/ft.rs‎

Copy file name to clipboardExpand all lines: crates/connectors/src/transport/kafka/ft.rs
+1-1Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
//! for a step.
88
mod input;
99
mod output;
10+
mod spool;
1011

1112
use anyhow::{Context, Result as AnyResult, bail};
1213
use feldera_types::transport::kafka::{KafkaLogLevel, default_redpanda_server};
@@ -169,7 +170,6 @@ impl CommonConfig {
169170
("enable.idempotence", "true"),
170171
("batch.size", "1"),
171172
("batch.num.messages", "1"),
172-
("retries", "5"),
173173
("socket.nagle.disable", "true"),
174174
("linger.ms", "0"),
175175
];

0 commit comments

Comments
0 (0)
You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.