You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mesos.apache.org by "Benjamin Mahler (JIRA)" <ji...@apache.org> on 2013/11/12 23:13:19 UTC

[jira] [Updated] (MESOS-43) Reading from beginning() to ending() of a replicated log should have "safe" semantics

     [ https://issues.apache.org/jira/browse/MESOS-43?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Benjamin Mahler updated MESOS-43:
---------------------------------

    Component/s: replicated log
                 java api

> Reading from beginning() to ending() of a replicated log should have "safe" semantics 
> --------------------------------------------------------------------------------------
>
>                 Key: MESOS-43
>                 URL: https://issues.apache.org/jira/browse/MESOS-43
>             Project: Mesos
>          Issue Type: Improvement
>          Components: java api, replicated log
>            Reporter: Benjamin Hindman
>            Assignee: Benjamin Hindman
>            Priority: Minor
>              Labels: twitter
>
> Right now it is possible to that reading from beginning() to ending() of a local replica will throw an exception because the local replica may have unlearned actions in the log. Creating a local writer *first* is only a partial solution because there is still a race after the writer has it's underlying coordinator elected but before calling ending() where another writer might (get elected and) append other actions to the log. It seems like a good solution is one where beginning() and ending() actually return special Log::Position objects that can be used to determine how to treat the semantics of Reader::read. It might also make sense to have a Replica::readFrom and Replica::readTo to help deal with this problem.



--
This message was sent by Atlassian JIRA
(v6.1#6144)