当前位置: 首页>>代码示例>>Java>>正文


Java BulkItemResponse.getFailure方法代码示例

本文整理汇总了Java中org.elasticsearch.action.bulk.BulkItemResponse.getFailure方法的典型用法代码示例。如果您正苦于以下问题:Java BulkItemResponse.getFailure方法的具体用法?Java BulkItemResponse.getFailure怎么用?Java BulkItemResponse.getFailure使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.elasticsearch.action.bulk.BulkItemResponse的用法示例。


在下文中一共展示了BulkItemResponse.getFailure方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: put

import org.elasticsearch.action.bulk.BulkItemResponse; //导入方法依赖的package包/类
@Override
public List<IndexResponse> put(List<Document> documents) {
    final Stopwatch watch = LoggingUtils.createStopWatch();
    final List<IndexResponse> results = new ArrayList<>();
    final BulkRequestBuilder bulkRequest = client.prepareBulk();
    for (final Document document : documents) {
        final String original = document.get_jsonObject();
        final String source = addPlatformFields(document.get_id(), original, document.getVisibility());
        if (source != null) {
            bulkRequest.add(
                    client.prepareIndex(indexName, document.get_type(), document.get_id()).setSource(
                            source));
        }
    }
    for (final BulkItemResponse response : bulkRequest.get()) {
        final IndexResponse indexResponse;
        if (response.isFailed()) {
            final BulkItemResponse.Failure failure = response.getFailure();
            logger.warn(
                    "Indexing failed on an object ({}, {}): {}", response.getId(), response.getType(),
                    response.getFailureMessage());
            indexResponse = convertElasticResponse(failure.getId(), failure.getType(), -1, false);
        } else {
            final org.elasticsearch.action.index.IndexResponse ir = response.getResponse();
            indexResponse = convertElasticResponse(ir.getId(), ir.getType(), ir.getVersion(), true);
        }
        results.add(indexResponse);
    }

    LoggingUtils.stopAndLogStopWatch(logger, watch, "Put Documents");

    if (forceRefreshOnInsert) {
        logger.trace("Forcing index refresh");
        forceIndexRefresh();
    }

    return results;
}
 
开发者ID:ezbake,项目名称:ezelastic,代码行数:39,代码来源:ElasticClient.java

示例2: flushBulk

import org.elasticsearch.action.bulk.BulkItemResponse; //导入方法依赖的package包/类
private void flushBulk() {
	BulkResponse bulkResponse = bulkRequest.execute().actionGet(); // flush
	if (bulkResponse.hasFailures()) { // log failures
		for (BulkItemResponse r : bulkResponse.getItems()) {
			LOG.error(r.getFailureMessage());
			Failure failure = r.getFailure();
			// e.g. when ES server is overloaded
			throw new ElasticsearchException(failure.toString());
		}
	}
}
 
开发者ID:BlueBrain,项目名称:bluima,代码行数:12,代码来源:ElasticIndexer.java

示例3: testBulkWithIngestFailures

import org.elasticsearch.action.bulk.BulkItemResponse; //导入方法依赖的package包/类
public void testBulkWithIngestFailures() throws Exception {
    createIndex("index");

    BytesReference source = jsonBuilder().startObject()
        .field("description", "my_pipeline")
        .startArray("processors")
        .startObject()
        .startObject("test")
        .endObject()
        .endObject()
        .endArray()
        .endObject().bytes();
    PutPipelineRequest putPipelineRequest = new PutPipelineRequest("_id", source, XContentType.JSON);
    client().admin().cluster().putPipeline(putPipelineRequest).get();

    int numRequests = scaledRandomIntBetween(32, 128);
    BulkRequest bulkRequest = new BulkRequest();
    for (int i = 0; i < numRequests; i++) {
        IndexRequest indexRequest = new IndexRequest("index", "type", Integer.toString(i)).setPipeline("_id");
        indexRequest.source(Requests.INDEX_CONTENT_TYPE, "field", "value", "fail", i % 2 == 0);
        bulkRequest.add(indexRequest);
    }

    BulkResponse response = client().bulk(bulkRequest).actionGet();
    assertThat(response.getItems().length, equalTo(bulkRequest.requests().size()));
    for (int i = 0; i < bulkRequest.requests().size(); i++) {
        BulkItemResponse itemResponse = response.getItems()[i];
        if (i % 2 == 0) {
            BulkItemResponse.Failure failure = itemResponse.getFailure();
            ElasticsearchException compoundProcessorException = (ElasticsearchException) failure.getCause();
            assertThat(compoundProcessorException.getRootCause().getMessage(), equalTo("test processor failed"));
        } else {
            IndexResponse indexResponse = itemResponse.getResponse();
            assertThat("Expected a successful response but found failure [" + itemResponse.getFailure() + "].",
                itemResponse.isFailed(), is(false));
            assertThat(indexResponse, notNullValue());
            assertThat(indexResponse.getId(), equalTo(Integer.toString(i)));
            assertEquals(DocWriteResponse.Result.CREATED, indexResponse.getResult());
        }
    }
}
 
开发者ID:justor,项目名称:elasticsearch_my,代码行数:42,代码来源:IngestClientIT.java


注:本文中的org.elasticsearch.action.bulk.BulkItemResponse.getFailure方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。