Hi Yong, 

Have you tried running the H query in debug mode. Hive log level can be changed 
by passing the following conf while hive client is running. 
 
#hive -hiveconf hive.root.logger=ALL,console -e " DDL statement ;"
#hive -hiveconf hive.root.logger=ALL,console -f ddl.sql ;  
 
Hope this helps

 
Thanks


On Mar 20, 2013, at 1:45 PM, java8964 java8964 <java8...@hotmail.com> wrote:

> Hi, 
> 
> I have the hadoop running in  pseudo-distributed mode on my linux box. Right 
> now I face a problem about a Hive, which throws Exception in a table for some 
> data which used my custom SerDe and InputFormat class.
> 
> To help me to trace the root cause, I need to modify the code of 
> org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe to add more debug logging 
> information to understand why the exception happens.
> 
> After I modify the hive code, I can compile it and generate a new 
> hive-serde.jar file, with the same name as the release version, just size 
> changed.
> 
> Now I put my new hive-serde.jar under $HIVE_HOME/lib folder, replace the old 
> one, and run the query which failed. But after the failure, if I check the 
> $HADOOP_HOME/logs/user_logs/, I saw the Exception stacktrace still looked 
> like generated by the original hive-serde class. The reason is that the line 
> number shown in the log doesn't match with the new code I changed to add the 
> debug information.
> 
> My question is, if I have this new compiled hive-serde.jar file, besides 
> $HIVE_HOME/lib, where should I put it in?
> 
> 1) This is a pseudo environments. Everything (namenode, data node, job 
> tracker and tasktracer are all running in one box)
> 2) After I replace hive-serde.jar with my new jar, I even stop all the hadoop 
> java processing and restart them.
> 3) But when I run the query in the hive session, I still saw the log 
> generated by the old hive-serde.jar class. Why?
> 
> Thank for any help
> 
> Yong

Reply via email to