Skip to content

Commit 0b9a32d

Browse files
authored
Merge pull request #425 from biothings/indexer-errors
Bulk Indexing Error Improvement
2 parents e9a47d0 + 76b3f85 commit 0b9a32d

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

biothings/hub/dataindex/indexer_task.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99

1010
from biothings.utils.es import ESIndex as BaseESIndex
1111
from biothings.utils.loggers import get_logger
12+
from biothings.utils.serializer import to_json
1213

1314
try:
1415
from biothings.utils.mongo import doc_feeder
@@ -92,8 +93,12 @@ def _action(doc):
9293
self.logger.error(error)
9394
self.logger.error("Document ID %s failed: %s", document_id, reason)
9495

95-
self.logger.warning("Discovered errors during the bulk index task. Defaulting to 0 indexed documents")
96-
return 0
96+
serialized_errors = to_json(errors, indent=True)
97+
message = (
98+
f"Bulk indexing failed for index '{self.index_name}'. "
99+
f"Elasticsearch responded with errors:\n{serialized_errors}"
100+
)
101+
raise helpers.BulkIndexError(message, errors) from e
97102

98103
# NOTE
99104
# Why doesn't "mget", "mexists", "mindex" belong to the base class?

0 commit comments

Comments
 (0)