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

Xuefu Zhang commented on HIVE-3632:
-----------------------------------

[~ashutoshc] Thanks for your comments.

0. Will base.
1. datanucleus.rdbms.useLegacyNativeValueStrategy is required because DN 3.x 
changed the way that default values are generated. Without this, metastore 
startup would fail while inserting default database entry. This is the error 
msg:
{code}
javax.jdo.JDODataStoreException: Insert of object 
"org.apache.hadoop.hive.metastore.model.MDatabase@176fbe79" using statement 
"INSERT INTO `DBS` (`NAME`,`DESC`,`DB_LOCATION_URI`) VALUES (?,?,?)" failed : 
Field 'DB_ID' doesn't have a default value
{code}
Setting this property to true instructs DN that the old way of generating 
default values is used. More information can be found at 
http://www.datanucleus.org/products/datanucleus/migration.html (search for 
useLegacyNativeValueStrategy).

2. DN deps in ql/ivy.xml is probably not needed. My patch was originally based 
on 0.10, where DN deps exist. I will test and remove if there is no need.
                
> Upgrade datanucleus to support JDK7
> -----------------------------------
>
>                 Key: HIVE-3632
>                 URL: https://issues.apache.org/jira/browse/HIVE-3632
>             Project: Hive
>          Issue Type: Bug
>          Components: Metastore
>    Affects Versions: 0.9.1, 0.10.0, 0.11.0
>            Reporter: Chris Drome
>            Assignee: Xuefu Zhang
>            Priority: Critical
>             Fix For: 0.12.0
>
>         Attachments: HIVE-3632.1.patch, HIVE-3632.patch, HIVE-3632.patch.1
>
>
> I found serious problems with datanucleus code when using JDK7, resulting in 
> some sort of exception being thrown when datanucleus code is entered.
> I tried source=1.7, target=1.7 with JDK7 as well as source=1.6, target=1.6 
> with JDK7 and there was no visible difference in that the same unit tests 
> failed.
> I tried upgrading datanucleus to 3.0.1, as per HIVE-2084.patch, which did not 
> fix the failing tests.
> I tried upgrading datanucleus to 3.1-release, as per the advise of 
> http://www.datanucleus.org/servlet/jira/browse/NUCENHANCER-86, which suggests 
> using ASMv4 will allow datanucleus to work with JDK7. I was not successful 
> with this either.
> I tried upgrading datanucleus to 3.1.2. I was not successful with this either.
> Regarding datanucleus support for JDK7+, there is the following JIRA
> http://www.datanucleus.org/servlet/jira/browse/NUCENHANCER-81
> which suggests that they don't plan to actively support JDK7+ bytecode any 
> time soon.
> I also tested the following JVM parameters found on
> http://veerasundar.com/blog/2012/01/java-lang-verifyerror-expecting-a-stackmap-frame-at-branch-target-jdk-7/
> with no success either.
> This will become a more serious problem as people move to newer JVMs. If 
> there are other who have solved this issue, please post how this was done. 
> Otherwise, it is a topic that I would like to raise for discussion.
> Test Properties:
> CLEAR LIBRARY CACHE

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to