Follow up on:
The PR introduced the WorkerChannel abstraction for decoupling gRPC from the project's core logic. This way people can bring their own transport protocols.
Right now, the WorkerChannel contract still expects plans and expressions to be encoded as protobuf bytes, however, some implementations (like in-memory) might not want to perform this serialization at all.
Passing the responsibility of serialization to the WorkerChannel implementations is not trivial though, as it typically requires the presence of a TaskContext, codecs, and other things that would make the WorkerChannel abstraction more complicated.
Before anyone taking this issue, please feel free to post the approach here, as I'd expect this to need some discussion.
Follow up on:
The PR introduced the
WorkerChannelabstraction for decoupling gRPC from the project's core logic. This way people can bring their own transport protocols.Right now, the
WorkerChannelcontract still expects plans and expressions to be encoded as protobuf bytes, however, some implementations (like in-memory) might not want to perform this serialization at all.Passing the responsibility of serialization to the
WorkerChannelimplementations is not trivial though, as it typically requires the presence of aTaskContext, codecs, and other things that would make theWorkerChannelabstraction more complicated.Before anyone taking this issue, please feel free to post the approach here, as I'd expect this to need some discussion.