You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by ku...@apache.org on 2020/03/06 10:44:28 UTC

[hive] branch master updated: HIVE-22981: DataFileReader is not closed in AvroGenericRecordReader#extractWriterTimezoneFromMetadata (Karen Coppage via Marta Kuczora)

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

kuczoram pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hive.git


The following commit(s) were added to refs/heads/master by this push:
     new 5ff8655  HIVE-22981: DataFileReader is not closed in AvroGenericRecordReader#extractWriterTimezoneFromMetadata (Karen Coppage via Marta Kuczora)
5ff8655 is described below

commit 5ff86553e0c6d7577eff7c46bf87ba3b090a494a
Author: Karen Coppage <kc...@gmail.com>
AuthorDate: Fri Mar 6 11:43:39 2020 +0100

    HIVE-22981: DataFileReader is not closed in AvroGenericRecordReader#extractWriterTimezoneFromMetadata (Karen Coppage via Marta Kuczora)
---
 .../apache/hadoop/hive/ql/io/avro/AvroGenericRecordReader.java    | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/ql/src/java/org/apache/hadoop/hive/ql/io/avro/AvroGenericRecordReader.java b/ql/src/java/org/apache/hadoop/hive/ql/io/avro/AvroGenericRecordReader.java
index f27cb23..e9392a1 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/io/avro/AvroGenericRecordReader.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/io/avro/AvroGenericRecordReader.java
@@ -152,13 +152,12 @@ public class AvroGenericRecordReader implements
   }
 
   private ZoneId extractWriterTimezoneFromMetadata(JobConf job, FileSplit split,
-      GenericDatumReader<GenericRecord> gdr) throws IOException {
+      GenericDatumReader<GenericRecord> gdr) {
     if (job == null || gdr == null || split == null || split.getPath() == null) {
       return null;
     }
-    try {
-      DataFileReader<GenericRecord> dataFileReader =
-          new DataFileReader<GenericRecord>(new FsInput(split.getPath(), job), gdr);
+    try (DataFileReader<GenericRecord> dataFileReader = new DataFileReader<GenericRecord>(
+        new FsInput(split.getPath(), job), gdr)) {
       if (dataFileReader.getMeta(AvroSerDe.WRITER_TIME_ZONE) != null) {
         try {
           return ZoneId.of(new String(dataFileReader.getMeta(AvroSerDe.WRITER_TIME_ZONE),
@@ -169,6 +168,7 @@ public class AvroGenericRecordReader implements
       }
     } catch (IOException e) {
       // Can't access metadata, carry on.
+      LOG.debug(e.getMessage(), e);
     }
     return null;
   }