Skip to content

File-sink-set-auto-flush

Update the auto-flush policy used by a FileSink. This helper changes direct runtime durability behavior without rebuilding the sink.

Interface

moonbit
pub fn FileSink::set_auto_flush(self : FileSink, enabled : Bool) -> Unit {

input

  • self : FileSink - File sink whose auto-flush policy should change.
  • enabled : Bool - New auto-flush setting.

Explanation

Detailed rules explaining key parameters and behaviors

  • This method updates runtime policy only.
  • It does not itself flush pending data.
  • The new value affects whether later writes attempt a flush after each rendered record.
  • Existing path, append policy, and rotation policy are left unchanged.

How to Use

Here are some specific examples provided.

When Need Direct Durability Tuning

When a concrete file sink should start flushing each write automatically:

moonbit
sink.set_auto_flush(true)

In this example, runtime policy is updated without rebuilding the sink.

When Need To Relax Flush Pressure

When a file sink should stop auto-flushing for throughput reasons:

moonbit
sink.set_auto_flush(false)

In this example, the call site updates policy explicitly on the direct file sink.

Error Case

e.g.:

  • If callers need an immediate flush action, flush() is the operational API.

  • This helper does not report whether previous writes or flushes succeeded.

Notes

  1. Use this helper for direct runtime durability tuning.

  2. Pair it with auto_flush_enabled() to verify the active policy.

Published from the repository docs folder with VitePress.