Skip to content

seastar::make_file_output_stream by-pass fdatasync? #2713

Open
@nvartolomei

Description

@nvartolomei

Hi, we have some cases where we use seastar::output_stream created by calling seastar::make_file_output_stream for writing temporary files (quite a few of them) and I think we could benefit from avoiding calling fdatasync on them. Currently, to make sure the (output stream buffered) data made it to the file we have to call seastar::output_stream::flush() (and close() too) but that flush also calls unconditionally seastar::file::flush() which results in a fdatasync call.

Any thoughts on adding an option for avoiding that? I.e. as an option inside ss::file_output_stream_options.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions