[ 
https://issues.apache.org/jira/browse/HIVE-1526?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12968548#action_12968548
 ] 

Ashutosh Chauhan commented on HIVE-1526:
----------------------------------------

bq. Also there are still exceptions on dynamic serde. When you run 'ant 
-Dthrift.home=... -Dtestcase=TestDynamicSerde' it throws  
org.apache.thrift.transport.TTransportException ...

This was because of a change in Thrift from 0.3 to 0.5 in TIOStreamTransport 
where earlier it was returning bytesRead as -1 in case of EOF but now throws 
Exception. It can be fixed with following:
{code}
Index: 
serde/src/java/org/apache/hadoop/hive/serde2/thrift/TCTLSeparatedProtocol.java
===================================================================
--- 
serde/src/java/org/apache/hadoop/hive/serde2/thrift/TCTLSeparatedProtocol.java  
    (revision 1042747)
+++ 
serde/src/java/org/apache/hadoop/hive/serde2/thrift/TCTLSeparatedProtocol.java  
    (working copy)
@@ -239,6 +240,10 @@
         }
         tokenizer = new StringTokenizer(row, separator, true);
       } catch (TTransportException e) {
+        if(e.getType() == TTransportException.END_OF_FILE){
+          tokenizer = new StringTokenizer("", separator, true);
+          return false;
+        }
         e.printStackTrace();
         tokenizer = null;
         return false;
{code} 

Carl, can you include this fix in your next patch?

> Hive should depend on a release version of Thrift
> -------------------------------------------------
>
>                 Key: HIVE-1526
>                 URL: https://issues.apache.org/jira/browse/HIVE-1526
>             Project: Hive
>          Issue Type: Task
>          Components: Build Infrastructure, Clients
>            Reporter: Carl Steinbach
>            Assignee: Carl Steinbach
>             Fix For: 0.7.0
>
>         Attachments: compile.err, HIVE-1526-complete.4.patch.txt, 
> HIVE-1526-complete.5.patch.txt, HIVE-1526-complete.6.patch.txt, 
> HIVE-1526-no-codegen.3.patch.txt, HIVE-1526-no-codegen.4.patch.txt, 
> HIVE-1526-no-codegen.5.patch.txt, HIVE-1526-no-codegen.6.patch.txt, 
> HIVE-1526.2.patch.txt, HIVE-1526.3.patch.txt, hive-1526.txt, libfb303.jar, 
> libthrift.jar, serde2_test.patch, svn_rm.sh, test.log, thrift-0.5.0.jar, 
> thrift-fb303-0.5.0.jar
>
>
> Hive should depend on a release version of Thrift, and ideally it should use 
> Ivy to resolve this dependency.
> The Thrift folks are working on adding Thrift artifacts to a maven repository 
> here: https://issues.apache.org/jira/browse/THRIFT-363

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to