hadoop-common-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Hadoop Wiki] Update of "Hive/HowToContribute" by JohnSichi
Date Wed, 27 Jan 2010 20:33:49 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Hadoop Wiki" for change notification.

The "Hive/HowToContribute" page has been changed by JohnSichi.
http://wiki.apache.org/hadoop/Hive/HowToContribute?action=diff&rev1=15&rev2=16

--------------------------------------------------

  
  If you are changing {{{hive_service.thrift}}}, the steps should be similar.  In both cases,
you may also need to [[HiveOdbc|deal with recompiling C++ clients as well]].
  
+ == Metastore JDO Changes ==
+ 
+ For some changes, you may need to update the persistence specification in {{{hive/metastore/src/model/package.jdo}}},
together with the various Java data access classes which it references.  If you get this wrong
(e.g. adding a new field in JDO without adding corresponding getters and setters in the Java
class), you'll get an error like this at runtime:
+ 
+ {{{
+ FAILED: Error in metadata: javax.jdo.JDOFatalUserException: Class org.apache.hadoop.hive.metastore.model.MTable
has field org.apache.hadoop.hive.metastore.model.MTable.someNewField declared in MetaData,
but this field doesnt exist in the class!
+ }}}
+ 
+ You can quickly find all such mistakes as follows:
+ 
+ {{{
+ cd /path/to/hive-trunk/metastore
+ ant model-enhance
+ }}}
+ 
+ Unfortunately, this ant task (which runs as part of the main build) does NOT cause the build
to fail when an error is encountered, so you have to read through the output to verify that
there are no errors remaining.
+ 
+ Note that persistence changes can have impact on the upgradability of existing deployed
metastores, so you should undertake them carefully and discuss them on the mailing lists.
+ 
  == Stay involved ==
  Contributors should join the [[http://hadoop.apache.org/hive/mailing_lists.html|Hive mailing
lists]].  In particular the dev list (to join discussions of changes) and the user list (to
help others).
  

Mime
View raw message