You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@kafka.apache.org by "Jose Armando Garcia Sancio (Jira)" <ji...@apache.org> on 2020/12/27 02:18:00 UTC
[jira] [Commented] (KAFKA-10694) Implement zero copy for
FetchSnapshot
[ https://issues.apache.org/jira/browse/KAFKA-10694?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17255154#comment-17255154 ]
Jose Armando Garcia Sancio commented on KAFKA-10694:
----------------------------------------------------
Another solution to this problem is to introduce another send type that supports both in-memory buffers and file regions. E.g.
{code:java}
interface Memory extends Send {
}
final class ByteMemory implements Memory {
ByteBuffer buffer;
...
}
final class FileMemory implements Memory {
FileChannel channel;
long position;
int maxSize;
...
}{code}
> Implement zero copy for FetchSnapshot
> -------------------------------------
>
> Key: KAFKA-10694
> URL: https://issues.apache.org/jira/browse/KAFKA-10694
> Project: Kafka
> Issue Type: Sub-task
> Components: replication
> Reporter: Jose Armando Garcia Sancio
> Priority: Major
>
> Change the _RawSnapshotWriter_ and _RawSnapshotReader_ interfaces to allow sending and receiving _FetchSnapshotResponse_ with minimal memory copies.
> This could be implemented by making the following changes
> {code:java}
> interface RawSnapshotWriter {
> ...
> public void append(MemoryRecords records) throws IOException;
> } {code}
> {code:java}
> interface RawSnapshotReader {
> ...
> public BaseRecords slice(long position) throws IOException;
> }{code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)