Uploaded image for project: 'Jackrabbit Oak'
  1. Jackrabbit Oak
  2. OAK-6737

Standby server should send timely responses to all client requests

    XMLWordPrintableJSON

Details

    Description

      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:

      String id = reader.readHeadRecordId();
      
      if (id == null) {
          ctx.writeAndFlush(new NotFoundGetHeadResponse(msg.getClientId(), id));
          return;
      }
      
      ctx.writeAndFlush(new GetHeadResponse(msg.getClientId(), id));
      

      Attachments

        Activity

          People

            adulceanu Andrei Dulceanu
            adulceanu Andrei Dulceanu
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated: