You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@bookkeeper.apache.org by "Venkateswararao Jujjuri (JIRA)" <ji...@apache.org> on 2015/11/18 23:53:10 UTC

[jira] [Commented] (BOOKKEEPER-874) Explict LAC from Writer to Bookies

    [ https://issues.apache.org/jira/browse/BOOKKEEPER-874?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15012264#comment-15012264 ] 

Venkateswararao Jujjuri commented on BOOKKEEPER-874:
----------------------------------------------------

How about this?

 enum OperationType {
+    PUT_LAC = 5;
+    GET_LAC = 6;
 }

+message PutLacRequest {
+    required int64 ledgerId = 1;
+    required int64 lac = 2;
+    required bytes body = 4; // Digest + lac from writer.
+}
+
+message GetLacRequest {
+    required int64 ledgerId = 1;
+}
+
+message PutLacResponse {
+    required StatusCode status = 1;
+}
+
+message GetLacResponse {
+    required StatusCode status = 1;
+    optional bytes lacBody = 2; // Digest lac sent by PutLacRequest
+    optional bytes lastEntryBody = 3; // Actual data of the last entry on the disk
+}
Client which receives validates diegests and extracts LAC from both and picks the highest one.


> Explict LAC from Writer to Bookies
> ----------------------------------
>
>                 Key: BOOKKEEPER-874
>                 URL: https://issues.apache.org/jira/browse/BOOKKEEPER-874
>             Project: Bookkeeper
>          Issue Type: Improvement
>          Components: bookkeeper-client, bookkeeper-server
>            Reporter: Venkateswararao Jujjuri
>            Assignee: Venkateswararao Jujjuri
>
> Current client API piggy-backs LAC with a write. This is keeps reader one behind the writer. In order to keep reader up to date with writer even when there is a pause in write, proposing the following:
> Writer sends explicit LAC on a configured timeout if there is no write within that period.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)