Github user xubo245 commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/2148#discussion_r182928852
--- Diff:
store/search/src/main/java/org/apache/carbondata/store/worker/SearchRequestHandler.java
---
@@ -93,10 +93,13 @@ public ShutdownResponse handleShutdown(ShutdownRequest
request) {
List<CarbonRow> rows = new LinkedList<>();
try {
while (reader.nextKeyValue()) {
- rows.add(reader.getCurrentValue());
+ // copy the data as the reader may reuse the same buffer, if
unsafe is enabled
+ rows.add(new CarbonRow(reader.getCurrentValue().getData()));
}
} catch (InterruptedException e) {
throw new IOException(e);
+ } finally {
--- End diff --
I test, if add the two line, the JVM will crash. If not, it's ok.
But I don't know the reason.
---