private Bookie getBookie() { return bookieServer == null ? null : bookieServer.getBookie(); }
@Override public HttpServiceResponse handle(HttpServiceRequest request) throws Exception { HttpServiceResponse response = new HttpServiceResponse(); Map<String, String> params = request.getParams(); if (HttpServer.Method.GET == request.getMethod() && (params != null) && params.containsKey("ledger_id")) { Long ledgerId = Long.parseLong(params.get("ledger_id")); LedgerManagerFactory mFactory = bookieServer.getBookie().getLedgerManagerFactory(); LedgerManager manager = mFactory.newLedgerManager(); // output <ledgerId: ledgerMetadata> Map<String, Object> output = Maps.newHashMap(); LedgerMetadata md = manager.readLedgerMetadata(ledgerId).get().getValue(); output.put(ledgerId.toString(), md); manager.close(); String jsonResponse = JsonUtil.toJson(output); LOG.debug("output body:" + jsonResponse); response.setBody(jsonResponse); response.setCode(HttpServer.StatusCode.OK); return response; } else { response.setCode(HttpServer.StatusCode.NOT_FOUND); response.setBody("Not found method. Should be GET method"); return response; } } }
List<Long> outputLedgers = null; Map<Long, List<String>> outputLedgersWithMissingReplica = null; LedgerManagerFactory mFactory = bookieServer.getBookie().getLedgerManagerFactory(); LedgerUnderreplicationManager underreplicationManager = mFactory.newLedgerUnderreplicationManager(); Iterator<UnderreplicatedLedger> iter = underreplicationManager.listLedgersToRereplicate(predicate);
? Integer.parseInt(params.get("page")) : -1; LedgerManagerFactory mFactory = bookieServer.getBookie().getLedgerManagerFactory(); LedgerManager manager = mFactory.newLedgerManager(); LedgerManager.LedgerRangeIterator iter = manager.getLedgerRanges();
bookieServer.getBookie().getLedgerStorage().forceGC(); return response; } else if (HttpServer.Method.GET == request.getMethod()) { Boolean isInForceGC = bookieServer.getBookie().getLedgerStorage().isInForceGC(); Pair<String, String> output = Pair.of("is_in_force_gc", isInForceGC.toString()); String jsonResponse = JsonUtil.toJson(output);
@Override public HttpServiceResponse handle(HttpServiceRequest request) throws Exception { HttpServiceResponse response = new HttpServiceResponse(); if (HttpServer.Method.GET == request.getMethod()) { List<GarbageCollectionStatus> details = bookieServer.getBookie() .getLedgerStorage().getGarbageCollectionStatus(); String jsonResponse = JsonUtil.toJson(details); if (LOG.isDebugEnabled()) { LOG.debug("output body:" + jsonResponse); } response.setBody(jsonResponse); response.setCode(HttpServer.StatusCode.OK); return response; } else { response.setCode(HttpServer.StatusCode.NOT_FOUND); response.setBody("Only support GET method to retrieve GC details." + " If you want to trigger gc, send a POST to gc endpoint."); return response; } } }
bookieServer.start(); for (int i = 0; i < 100; i++) { if (bookieServer.getBookie().isRunning()) { LOG.info("Apache Bookkeeper started"); break;
new ScrubberService( rootStatsLogger.scope(ScrubberStats.SCOPE), conf, bookieService.getServer().getBookie().getLedgerStorage()));