Skip to content

Commit 785b4d0

Browse files
authored
Checking result of write (#1870)
AbstractBulkFactory currently ignores the results of certain writes, meaning that a user might corrupt or lose data without realizing it. This commit checks the result and explicitly throws an Exception if there is a problem.
1 parent e8a96eb commit 785b4d0

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

mr/src/main/java/org/elasticsearch/hadoop/serialization/bulk/AbstractBulkFactory.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,9 +150,12 @@ void doWrite(Object value) {
150150
else {
151151
BytesArray ba = pool.get();
152152
JacksonJsonGenerator generator = new JacksonJsonGenerator(new FastByteArrayOutputStream(ba));
153-
valueWriter.write(value, generator);
153+
ValueWriter.Result writeResult = valueWriter.write(value, generator);
154154
generator.flush();
155155
generator.close();
156+
if(writeResult.isSuccesful() == false) {
157+
throw new RuntimeException("Write failed");
158+
}
156159
}
157160
}
158161

0 commit comments

Comments
 (0)