[ https://issues.apache.org/jira/browse/RATIS-960?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17120063#comment-17120063 ]
Tsz-wo Sze commented on RATIS-960: ---------------------------------- {code:java} /** * Create asynchronously a {@link WritableByteChannel} to stream state machine data for the given data ID. * * @return a future of the stream channel. */ default CompletableFuture<WritableByteChannel> stream(DataId dataId) { return CompletableFuture.completedFuture(null); } /** * Remove asynchronously the state machine data for the given data ID. * * @return a future for the remove task. */ default CompletableFuture<?> remove(DataId dataId) { return CompletableFuture.completedFuture(null); } {code} We propose adding the above stream(..) and remove(..) methods to the DataApi, which will be added by RATIS-959. > Support streaming state machine data > ------------------------------------ > > Key: RATIS-960 > URL: https://issues.apache.org/jira/browse/RATIS-960 > Project: Ratis > Issue Type: New Feature > Reporter: Tsz-wo Sze > Assignee: Tsz-wo Sze > Priority: Major > > {code} > //StateMachine > CompletableFuture<?> writeStateMachineData(LogEntryProto entry) > {code} > In StateMachine, we have writeStateMachineData to write the state machine > data in the given log entry. It is inefficient to process state machine data > in a log entry when the data size is large. > In this JIRA, we add new APIs to support streaming state machine data. -- This message was sent by Atlassian Jira (v8.3.4#803005)