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

Michael Dürig updated OAK-6737:
-------------------------------
    Fix Version/s:     (was: 1.8)

> Standby server should send timely responses to all client requests
> ------------------------------------------------------------------
>
>                 Key: OAK-6737
>                 URL: https://issues.apache.org/jira/browse/OAK-6737
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: segment-tar, tarmk-standby
>            Reporter: Andrei Dulceanu
>            Assignee: Andrei Dulceanu
>            Priority: Minor
>              Labels: cold-standby
>             Fix For: 1.10, 1.10.1
>
>
> Currently all the {{GetXXXRequestHandler}} (where XXX stands for Blob, Head, 
> References and Segment), on the server discard client requests which cannot 
> be satisfied (i.e. the requested object does not exist (yet) on the server). 
> A more transparent approach would be to timely respond to all client 
> requests, clearly stating that the object was not found. This would improve a 
> lot debugging for example, because all requests and their responses could be 
> easily followed from the client log, without needing to know what actually 
> happened on the server.
> Below, a possible implementation for {{GetHeadRequestHandler}}, suggested by 
> [~frm] in a comment on OAK-6678:
> {noformat}
> String id = reader.readHeadRecordId();
> if (id == null) {
>     ctx.writeAndFlush(new NotFoundGetHeadResponse(msg.getClientId(), id));
>     return;
> }
> ctx.writeAndFlush(new GetHeadResponse(msg.getClientId(), id));
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to