From f8ff42d397ba7b7c230b0a0fbc7ab05b6530cbd6 Mon Sep 17 00:00:00 2001 From: kimchy Date: Tue, 19 Apr 2011 16:13:26 +0300 Subject: [PATCH] log when failing to process doc after index operation --- .../action/bulk/TransportShardBulkAction.java | 3 +-- .../elasticsearch/action/index/TransportIndexAction.java | 9 ++++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/modules/elasticsearch/src/main/java/org/elasticsearch/action/bulk/TransportShardBulkAction.java b/modules/elasticsearch/src/main/java/org/elasticsearch/action/bulk/TransportShardBulkAction.java index 9ca11d56ea5..b444dbe703f 100644 --- a/modules/elasticsearch/src/main/java/org/elasticsearch/action/bulk/TransportShardBulkAction.java +++ b/modules/elasticsearch/src/main/java/org/elasticsearch/action/bulk/TransportShardBulkAction.java @@ -222,10 +222,9 @@ public class TransportShardBulkAction extends TransportShardReplicationOperation try { PercolatorExecutor.Response percolate = indexService.percolateService().percolate(new PercolatorExecutor.DocAndSourceQueryRequest(op.parsedDoc(), indexRequest.percolate())); ((IndexResponse) itemResponse.response()).matches(percolate.matches()); + op.docMapper().processDocumentAfterIndex(op.doc()); } catch (Exception e) { logger.warn("failed to percolate [{}]", e, itemRequest.request()); - } finally { - op.docMapper().processDocumentAfterIndex(op.doc()); } } } diff --git a/modules/elasticsearch/src/main/java/org/elasticsearch/action/index/TransportIndexAction.java b/modules/elasticsearch/src/main/java/org/elasticsearch/action/index/TransportIndexAction.java index 46f6befc0c1..4c8de769b47 100644 --- a/modules/elasticsearch/src/main/java/org/elasticsearch/action/index/TransportIndexAction.java +++ b/modules/elasticsearch/src/main/java/org/elasticsearch/action/index/TransportIndexAction.java @@ -212,17 +212,20 @@ public class TransportIndexAction extends TransportShardReplicationOperationActi @Override protected void postPrimaryOperation(IndexRequest request, PrimaryResponse response) { Engine.IndexingOperation op = (Engine.IndexingOperation) response.payload(); if (!Strings.hasLength(request.percolate())) { - op.docMapper().processDocumentAfterIndex(op.doc()); + try { + op.docMapper().processDocumentAfterIndex(op.doc()); + } catch (Exception e) { + logger.warn("failed to cleanup doc after index [{}]", e, request); + } return; } IndexService indexService = indicesService.indexServiceSafe(request.index()); try { PercolatorExecutor.Response percolate = indexService.percolateService().percolate(new PercolatorExecutor.DocAndSourceQueryRequest(op.parsedDoc(), request.percolate())); response.response().matches(percolate.matches()); + op.docMapper().processDocumentAfterIndex(op.doc()); } catch (Exception e) { logger.warn("failed to percolate [{}]", e, request); - } finally { - op.docMapper().processDocumentAfterIndex(op.doc()); } }