Skip to content

Proto: migrate the file sinks (CsvSink, JsonSink, ParquetSink) #23519

Description

@adriangb

Part of #23494.

In datafusion-datasource-{csv,json,parquet}. Each DataSink implements try_to_proto + an inherent try_from_proto. Note: the new inherent try_from_proto intentionally replaces the old TryFromProto<&protobuf::*Sink> impls (a documented api-change). Blocked by #23498.


Follow the pattern in #23494 (reference impl: #23495 / ProjectionExec; full end-state draft: #23496). Add try_to_proto inside impl ExecutionPlan for X, add the inherent X::try_from_proto, repoint the decode arm, and delete the old central arm in the same PR (that is the proof the hook is reached). Keep the wire format byte-for-byte identical.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions