/** * Completely delete an index. */ public Observable deleteApplication() { String idString = applicationId(applicationScope.getApplication()); final TermQueryBuilder tqb = QueryBuilders.termQuery(APPLICATION_ID_FIELDNAME, idString); final String[] indexes = getIndexes(); //Added For Graphite Metrics return Observable.from( indexes ).flatMap( index -> { final ListenableActionFuture<DeleteByQueryResponse> response = esProvider.getClient().prepareDeleteByQuery( alias.getWriteAlias() ).setQuery( tqb ).execute(); response.addListener( new ActionListener<DeleteByQueryResponse>() { @Override public void onResponse( DeleteByQueryResponse response ) { checkDeleteByQueryResponse( tqb, response ); } @Override public void onFailure( Throwable e ) { logger.error( "Failed on delete index", e.getMessage() ); } } ); return Observable.from( response ); } ).doOnError( t -> logger.error( "Failed on delete application", t.getMessage() ) ); }
private void deleteByType(String type) { client.prepareDeleteByQuery(index) .setQuery(termQuery("_type", type)) .execute() .actionGet(); }
public static DeleteByQueryResponse clearIndex(Client client, String indexName){ DeleteByQueryResponse indexDeleteByQueryResponses = client.prepareDeleteByQuery(indexName).setQuery(QueryBuilders.matchAllQuery()).execute().actionGet(); GetMappingsResponse getMappingsResponse = client.admin().indices().prepareGetMappings(indexName).execute().actionGet(); ArrayList<String> mappings = new ArrayList(); getMappingsResponse.getMappings().forEach(map -> { map.value.forEach(map2 -> mappings.add(map2.value.type())); }); if(mappings.size() > 0) { DeleteMappingResponse deleteMappingResponse = client.admin().indices().prepareDeleteMapping(indexName).setType(mappings.toArray(new String[mappings.size()])).execute().actionGet(); } return indexDeleteByQueryResponses; }
/** * Delete all documents in the index * * @param nodeName * @param indexName * @throws Exception * @throws ElasticsearchException */ private void clean(Map<String, Object> context, String nodeName, String indexName) throws ElasticsearchException, Exception { client(context, nodeName).prepareDeleteByQuery(indexName) .setQuery(QueryBuilders.matchAllQuery()) .execute().actionGet(); }
protected void deleteAllDocumentForSite(String siteId) { getLog().debug("removing all documents from search index for siteId: " + siteId); DeleteByQueryResponse response = client.prepareDeleteByQuery(indexName) .setQuery(termQuery(SearchService.FIELD_SITEID, siteId)) .setTypes(indexedDocumentType) .execute() .actionGet(); }
/** * Delete all documents in the index * * @param nodeName * @param indexName * @throws Exception * @throws ElasticsearchException */ private void clean(Map<String, Object> context, String nodeName, String indexName) throws ElasticsearchException, Exception { client(context, nodeName).prepareDeleteByQuery(indexName) .setQuery(QueryBuilders.matchAllQuery()) .execute().actionGet(); }
@Override public void unindexAll(String appid, Map<String, ?> terms, boolean matchAll) { if (StringUtils.isBlank(appid) || terms == null || terms.isEmpty()) { return; } DeleteByQueryRequestBuilder dqrb = client().prepareDeleteByQuery(appid); dqrb.setQuery(QueryBuilders.filteredQuery(QueryBuilders.matchAllQuery(), getTermsFilter(terms, matchAll))); if (isAsyncEnabled()) { dqrb.execute(); } else { dqrb.execute().actionGet(); } logger.debug("Search.unindexAll() {}", terms.size()); }
@Override public <T> void delete(DeleteQuery deleteQuery, Class<T> clazz) { ElasticsearchPersistentEntity persistentEntity = getPersistentEntityFor(clazz); client.prepareDeleteByQuery(persistentEntity.getIndexName()) .setTypes(persistentEntity.getIndexType()) .setQuery(deleteQuery.getQuery()) .execute().actionGet(); }
if (MysqlRiver.this.deleteOldEntries) { MysqlRiver.this.logger.info("Removing old MySQL entries from ElasticSearch!"); MysqlRiver.this.esClient.prepareDeleteByQuery(MysqlRiver.this.index) .setTypes(MysqlRiver.this.type) .setQuery(QueryBuilders.rangeQuery("_timestamp").lt(timestamp))
esClient.prepareDeleteByQuery(new String[] { index }).setQuery(QueryBuilders.matchAllQuery()).execute().get();