@Override public RegionStoreSequenceIds getLastSequenceId(byte[] encodedRegionName) { try { GetLastFlushedSequenceIdRequest req = RequestConverter.buildGetLastFlushedSequenceIdRequest(encodedRegionName); RegionServerStatusService.BlockingInterface rss = rssStub; if (rss == null) { // Try to connect one more time createRegionServerStatusStub(); rss = rssStub; if (rss == null) { // Still no luck, we tried LOG.warn("Unable to connect to the master to check " + "the last flushed sequence id"); return RegionStoreSequenceIds.newBuilder().setLastFlushedSequenceId(HConstants.NO_SEQNUM) .build(); } } GetLastFlushedSequenceIdResponse resp = rss.getLastFlushedSequenceId(null, req); return RegionStoreSequenceIds.newBuilder() .setLastFlushedSequenceId(resp.getLastFlushedSequenceId()) .addAllStoreSequenceId(resp.getStoreLastFlushedSequenceIdList()).build(); } catch (ServiceException e) { LOG.warn("Unable to connect to the master to check the last flushed sequence id", e); return RegionStoreSequenceIds.newBuilder().setLastFlushedSequenceId(HConstants.NO_SEQNUM) .build(); } }
@Override @QosPriority(priority = HConstants.ADMIN_QOS) public GetLastFlushedSequenceIdResponse getLastFlushedSequenceId(RpcController controller, GetLastFlushedSequenceIdRequest request) throws ServiceException { try { master.checkServiceStarted(); } catch (IOException ioe) { throw new ServiceException(ioe); } byte[] encodedRegionName = request.getRegionName().toByteArray(); RegionStoreSequenceIds ids = master.serverManager.getLastFlushedSequenceId(encodedRegionName); return ResponseConverter.buildGetLastFlushedSequenceIdResponse(ids); }
/** * Creates a response for the last flushed sequence Id request * @return A GetLastFlushedSequenceIdResponse */ public static GetLastFlushedSequenceIdResponse buildGetLastFlushedSequenceIdResponse( RegionStoreSequenceIds ids) { return GetLastFlushedSequenceIdResponse.newBuilder() .setLastFlushedSequenceId(ids.getLastFlushedSequenceId()) .addAllStoreLastFlushedSequenceId(ids.getStoreSequenceIdList()).build(); }
@Override public GetLastFlushedSequenceIdResponse getLastFlushedSequenceId(RpcController controller, GetLastFlushedSequenceIdRequest request) throws ServiceException { try { master.checkServiceStarted(); } catch (IOException ioe) { throw new ServiceException(ioe); } byte[] encodedRegionName = request.getRegionName().toByteArray(); long seqId = master.serverManager.getLastFlushedSequenceId(encodedRegionName); return ResponseConverter.buildGetLastFlushedSequenceIdResponse(seqId); }
@Override public GetLastFlushedSequenceIdResponse getLastFlushedSequenceId(RpcController controller, GetLastFlushedSequenceIdRequest request) throws ServiceException { byte[] regionName = request.getRegionName().toByteArray(); long seqId = serverManager.getLastFlushedSequenceId(regionName); return ResponseConverter.buildGetLastFlushedSequenceIdResponse(seqId); }
@Override public GetLastFlushedSequenceIdResponse getLastFlushedSequenceId(RpcController controller, GetLastFlushedSequenceIdRequest request) throws ServiceException { try { master.checkServiceStarted(); } catch (IOException ioe) { throw new ServiceException(ioe); } byte[] regionName = request.getRegionName().toByteArray(); long seqId = master.serverManager.getLastFlushedSequenceId(regionName); return ResponseConverter.buildGetLastFlushedSequenceIdResponse(seqId); }
/** * Creates a response for the last flushed sequence Id request * @return A GetLastFlushedSequenceIdResponse */ public static GetLastFlushedSequenceIdResponse buildGetLastFlushedSequenceIdResponse( long seqId) { return GetLastFlushedSequenceIdResponse.newBuilder().setLastFlushedSequenceId(seqId).build(); }