You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ratis.apache.org by "Tsz-wo Sze (Jira)" <ji...@apache.org> on 2020/05/30 02:17:00 UTC

[jira] [Commented] (RATIS-960) Support streaming state machine data

    [ 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)