@Override public ClearScrollResponse newResponse() { return new ClearScrollResponse(); }
@Override public void onResponse(ClearScrollResponse response) { logger.debug("Freed [{}] contexts", response.getNumFreed()); onCompletion.run(); }
@Override public void onResponse(ClearScrollResponse response) { if (!response.isSucceeded()) { LOGGER.warning("Could not close search context (response code %s).", response.status()); } else { LOGGER.debug("Successfully closed search context."); } }
/** * Clears the given scroll Ids */ public void clearScroll(String... scrollIds) { ClearScrollResponse clearResponse = client().prepareClearScroll() .setScrollIds(Arrays.asList(scrollIds)).get(); assertThat(clearResponse.isSucceeded(), equalTo(true)); }
clearScrollRequest.addScrollId(scrollId); ClearScrollResponse clearScrollResponse = client.clearScroll(clearScrollRequest); boolean succeeded = clearScrollResponse.isSucceeded(); } catch (IOException e) { logger.info("River index " + this.RIVER_INDEX + " not found");
private void onFreedContext(boolean freed) { if (freed) { freedSearchContexts.incrementAndGet(); } if (expectedOps.countDown()) { boolean succeeded = hasFailed.get() == false; listener.onResponse(new ClearScrollResponse(succeeded, freedSearchContexts.get())); } }
@Override public void onResponse(ClearScrollResponse response) { logger.debug("Freed [{}] contexts", response.getNumFreed()); onCompletion.run(); }
clearScrollRequest.addScrollId(scrollId); ClearScrollResponse clearScrollResponse = client.clearScroll(clearScrollRequest); boolean succeeded = clearScrollResponse.isSucceeded(); } catch (IOException e) { e.printStackTrace();
private void onFailedFreedContext(Throwable e, DiscoveryNode node) { logger.warn(() -> new ParameterizedMessage("Clear SC failed on node[{}]", node), e); /* * We have to set the failure marker before we count down otherwise we can expose the failure marker before we have set it to a * racing thread successfully freeing a context. This would lead to that thread responding that the clear scroll succeeded. */ hasFailed.set(true); if (expectedOps.countDown()) { listener.onResponse(new ClearScrollResponse(false, freedSearchContexts.get())); } } }
@Override public void onResponse(ClearScrollResponse response) { logger.debug("Freed [{}] contexts", response.getNumFreed()); onCompletion.run(); }
ClearScrollController(ClearScrollRequest request, ActionListener<ClearScrollResponse> listener, DiscoveryNodes nodes, Logger logger, SearchTransportService searchTransportService) { this.nodes = nodes; this.logger = logger; this.searchTransportService = searchTransportService; this.listener = listener; List<String> scrollIds = request.getScrollIds(); final int expectedOps; if (scrollIds.size() == 1 && "_all".equals(scrollIds.get(0))) { expectedOps = nodes.getSize(); runner = this::cleanAllScrolls; } else { List<ScrollIdForNode> parsedScrollIds = new ArrayList<>(); for (String parsedScrollId : request.getScrollIds()) { ScrollIdForNode[] context = parseScrollId(parsedScrollId).getContext(); for (ScrollIdForNode id : context) { parsedScrollIds.add(id); } } if (parsedScrollIds.isEmpty()) { expectedOps = 0; runner = () -> listener.onResponse(new ClearScrollResponse(true, 0)); } else { expectedOps = parsedScrollIds.size(); runner = () -> cleanScrollIds(parsedScrollIds); } } this.expectedOps = new CountDown(expectedOps); }
@Override public void onResponse(ClearScrollResponse response) { logger.debug("Freed [{}] contexts", response.getNumFreed()); onCompletion.run(); }
@Override public ClearScrollResponse newResponse() { return new ClearScrollResponse(); }
@Override public void onResponse(ClearScrollResponse response) { logger.debug("Freed [{}] contexts", response.getNumFreed()); }
@Override public ClearScrollResponse newResponse() { return new ClearScrollResponse(); }
@Override public void onResponse(ClearScrollResponse response) { logger.debug("Freed [{}] contexts", response.getNumFreed()); }
@Override public ClearScrollResponse newResponse() { return new ClearScrollResponse(); }
@Override public ClearScrollResponse newResponse() { return new ClearScrollResponse(); }
private void onFreedContext(boolean freed) { if (freed) { freedSearchContexts.incrementAndGet(); } if (expectedOps.countDown()) { boolean succeeded = hasFailed.get() == false; listener.onResponse(new ClearScrollResponse(succeeded, freedSearchContexts.get())); } }
void onFreedContext(boolean freed) { if (freed) { numberOfFreedSearchContexts.incrementAndGet(); } if (expectedOps.countDown()) { boolean succeeded = expHolder.get() == null; listener.onResponse(new ClearScrollResponse(succeeded, numberOfFreedSearchContexts.get())); } }