You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ma...@apache.org on 2020/09/05 15:26:16 UTC

[lucene-solr] 10/13: @742 Respond to test fails.

This is an automated email from the ASF dual-hosted git repository.

markrmiller pushed a commit to branch reference_impl
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git

commit 59afe462b5c94551857dd632509a118b7c6cd927
Author: markrmiller@gmail.com <ma...@gmail.com>
AuthorDate: Fri Sep 4 11:02:57 2020 -0500

    @742 Respond to test fails.
---
 .../java/org/apache/solr/handler/export/ExportWriter.java   | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/solr/core/src/java/org/apache/solr/handler/export/ExportWriter.java b/solr/core/src/java/org/apache/solr/handler/export/ExportWriter.java
index 3eccd0d..25ef79a 100644
--- a/solr/core/src/java/org/apache/solr/handler/export/ExportWriter.java
+++ b/solr/core/src/java/org/apache/solr/handler/export/ExportWriter.java
@@ -123,6 +123,8 @@ public class ExportWriter implements SolrCore.RawWriter, Closeable {
   FixedBitSet[] sets = null;
   PushWriter writer;
   private String wt;
+  private boolean closeWriter;
+  private boolean closeRespWriter;
 
   private static class TupleEntryWriter implements EntryWriter {
     Tuple tuple;
@@ -270,9 +272,11 @@ public class ExportWriter implements SolrCore.RawWriter, Closeable {
 
   @Override
   public void close() throws IOException {
-    if (writer != null) writer.close();
-    if (respWriter != null) {
-      respWriter.flush();
+    if (closeWriter) {
+      if (writer != null) writer.close();
+      writer = null;
+    }
+    if (respWriter != null && closeRespWriter) {
       respWriter.close();
     }
 
@@ -295,9 +299,12 @@ public class ExportWriter implements SolrCore.RawWriter, Closeable {
     if (rw instanceof BinaryResponseWriter) {
       //todo add support for other writers after testing
       writer = new JavaBinCodec(os, null);
+      closeWriter = true;
     } else {
       respWriter = new OutputStreamWriter(os, StandardCharsets.UTF_8);
       writer = JSONResponseWriter.getPushWriter(respWriter, req, res);
+      closeRespWriter = true;
+      closeWriter = true;
     }
     Exception exception = res.getException();
     if (exception != null) {