From d58c0e210d6338343bd9a97ae545435dfbfac120 Mon Sep 17 00:00:00 2001 From: Nandor Kollar Date: Wed, 4 Jan 2017 13:36:00 +0100 Subject: [PATCH] AVRO-1881 - Avro (Java) Memory Leak when reusing JsonDecoder instance --- .../avro/src/main/java/org/apache/avro/io/JsonDecoder.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lang/java/avro/src/main/java/org/apache/avro/io/JsonDecoder.java b/lang/java/avro/src/main/java/org/apache/avro/io/JsonDecoder.java index 34a1862de03..78fafaa830a 100644 --- a/lang/java/avro/src/main/java/org/apache/avro/io/JsonDecoder.java +++ b/lang/java/avro/src/main/java/org/apache/avro/io/JsonDecoder.java @@ -105,6 +105,8 @@ public JsonDecoder configure(InputStream in) throws IOException { throw new NullPointerException("InputStream to read from cannot be null!"); } parser.reset(); + reorderBuffers.clear(); + currentReorderBuffer = null; this.in = jsonFactory.createJsonParser(in); this.in.nextToken(); return this; @@ -127,6 +129,8 @@ public JsonDecoder configure(String in) throws IOException { throw new NullPointerException("String to read from cannot be null!"); } parser.reset(); + reorderBuffers.clear(); + currentReorderBuffer = null; this.in = new JsonFactory().createJsonParser(in); this.in.nextToken(); return this;