[jira] [Commented] (HIVE-14152) datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling downgrade
[ https://issues.apache.org/jira/browse/HIVE-14152?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16213611#comment-16213611 ] Alexander Kolbasov commented on HIVE-14152: --- I was wrong and the {{datanucleus.autoStartMechanismMode}} is correct one. > datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling > downgrade > -- > > Key: HIVE-14152 > URL: https://issues.apache.org/jira/browse/HIVE-14152 > Project: Hive > Issue Type: Bug > Components: Metastore >Reporter: Daniel Dai >Assignee: Thejas M Nair > Labels: TODOC2.1.1, TODOC2.2 > Fix For: 2.1.1, 2.2.0 > > Attachments: HIVE-14152.1.patch, HIVE-14152.2.patch, > HIVE-14152.3.patch, HIVE-14152.addendum.patch > > > We see the following issue when downgrading metastore: > 1. Run some query using new tables > 2. Downgrade metastore > 3. Restart metastore will complain the new table does not exist > In particular, constaints tables does not exist in branch-1. If we run Hive 2 > and create a constraint, then downgrade metastore to Hive 1, datanucleus will > complain: > {code} > javax.jdo.JDOFatalUserException: Error starting up DataNucleus : a class > "org.apache.hadoop.hive.metastore.model.MConstraint" was listed as being > persisted previously in this datastore, yet the class wasnt found. Perhaps it > is used by a different DataNucleus-enabled application in this datastore, or > you have changed your class names. > at > org.datanucleus.api.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:528) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.freezeConfiguration(JDOPersistenceManagerFactory.java:788) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.createPersistenceManagerFactory(JDOPersistenceManagerFactory.java:333) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.getPersistenceManagerFactory(JDOPersistenceManagerFactory.java:202) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at javax.jdo.JDOHelper$16.run(JDOHelper.java:1965) > at java.security.AccessController.doPrivileged(Native Method) > at javax.jdo.JDOHelper.invoke(JDOHelper.java:1960) > at > javax.jdo.JDOHelper.invokeGetPersistenceManagerFactoryOnImplementation(JDOHelper.java:1166) > at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:808) > at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:701) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPMF(ObjectStore.java:377) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPersistenceManager(ObjectStore.java:406) > at > org.apache.hadoop.hive.metastore.ObjectStore.initialize(ObjectStore.java:299) > at > org.apache.hadoop.hive.metastore.ObjectStore.setConf(ObjectStore.java:266) > at > org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:76) > at > org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:136) > at > org.apache.hadoop.hive.metastore.RawStoreProxy.(RawStoreProxy.java:60) > at > org.apache.hadoop.hive.metastore.RawStoreProxy.getProxy(RawStoreProxy.java:69) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.newRawStore(HiveMetaStore.java:650) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:628) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:677) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:484) > at > org.apache.hadoop.hive.metastore.RetryingHMSHandler.(RetryingHMSHandler.java:77) > at > org.apache.hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:83) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:5905) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:5900) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.startMetaStore(HiveMetaStore.java:6159) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.main(HiveMetaStore.java:6084) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[jira] [Commented] (HIVE-14152) datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling downgrade
[ https://issues.apache.org/jira/browse/HIVE-14152?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16213544#comment-16213544 ] Alexander Kolbasov commented on HIVE-14152: --- This patch uses the wrong configuration string. See HIVE-17872 for more information. > datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling > downgrade > -- > > Key: HIVE-14152 > URL: https://issues.apache.org/jira/browse/HIVE-14152 > Project: Hive > Issue Type: Bug > Components: Metastore >Reporter: Daniel Dai >Assignee: Thejas M Nair > Labels: TODOC2.1.1, TODOC2.2 > Fix For: 2.1.1, 2.2.0 > > Attachments: HIVE-14152.1.patch, HIVE-14152.2.patch, > HIVE-14152.3.patch, HIVE-14152.addendum.patch > > > We see the following issue when downgrading metastore: > 1. Run some query using new tables > 2. Downgrade metastore > 3. Restart metastore will complain the new table does not exist > In particular, constaints tables does not exist in branch-1. If we run Hive 2 > and create a constraint, then downgrade metastore to Hive 1, datanucleus will > complain: > {code} > javax.jdo.JDOFatalUserException: Error starting up DataNucleus : a class > "org.apache.hadoop.hive.metastore.model.MConstraint" was listed as being > persisted previously in this datastore, yet the class wasnt found. Perhaps it > is used by a different DataNucleus-enabled application in this datastore, or > you have changed your class names. > at > org.datanucleus.api.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:528) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.freezeConfiguration(JDOPersistenceManagerFactory.java:788) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.createPersistenceManagerFactory(JDOPersistenceManagerFactory.java:333) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.getPersistenceManagerFactory(JDOPersistenceManagerFactory.java:202) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at javax.jdo.JDOHelper$16.run(JDOHelper.java:1965) > at java.security.AccessController.doPrivileged(Native Method) > at javax.jdo.JDOHelper.invoke(JDOHelper.java:1960) > at > javax.jdo.JDOHelper.invokeGetPersistenceManagerFactoryOnImplementation(JDOHelper.java:1166) > at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:808) > at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:701) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPMF(ObjectStore.java:377) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPersistenceManager(ObjectStore.java:406) > at > org.apache.hadoop.hive.metastore.ObjectStore.initialize(ObjectStore.java:299) > at > org.apache.hadoop.hive.metastore.ObjectStore.setConf(ObjectStore.java:266) > at > org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:76) > at > org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:136) > at > org.apache.hadoop.hive.metastore.RawStoreProxy.(RawStoreProxy.java:60) > at > org.apache.hadoop.hive.metastore.RawStoreProxy.getProxy(RawStoreProxy.java:69) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.newRawStore(HiveMetaStore.java:650) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:628) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:677) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:484) > at > org.apache.hadoop.hive.metastore.RetryingHMSHandler.(RetryingHMSHandler.java:77) > at > org.apache.hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:83) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:5905) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:5900) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.startMetaStore(HiveMetaStore.java:6159) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.main(HiveMetaStore.java:6084) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at >
[jira] [Commented] (HIVE-14152) datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling downgrade
[ https://issues.apache.org/jira/browse/HIVE-14152?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15376627#comment-15376627 ] Lefty Leverenz commented on HIVE-14152: --- Doc note: This changes the description of *datanucleus.schema.autoCreateAll*, changes the default value and description of *hive.metastore.schema.verification*, changes the default value of *hive.metastore.schema.verification.record.version*, and removes *datanucleus.autoStartMechanismMode*. The changes need to be documented in the wiki for releases 2.1.1 and 2.2.0. Here are the doc links: * [Configuration Properties -- datanucleus.schema.autoCreateAll | https://cwiki.apache.org/confluence/display/Hive/Configuration+Properties#ConfigurationProperties-datanucleus.schema.autoCreateAll] * [Configuration Properties -- hive.metastore.schema.verification | https://cwiki.apache.org/confluence/display/Hive/Configuration+Properties#ConfigurationProperties-hive.metastore.schema.verification] * [Configuration Properties -- hive.metastore.schema.verification.record.version | https://cwiki.apache.org/confluence/display/Hive/Configuration+Properties#ConfigurationProperties-hive.metastore.schema.verification.record.version] (_not documented yet for HIVE-9749 but when it is, this link will work_) * [Configuration Properties -- datanucleus.autoStartMechanismMode | https://cwiki.apache.org/confluence/display/Hive/Configuration+Properties#ConfigurationProperties-datanucleus.autoStartMechanismMode] Added TODOC2.1.1 and TODOC2.2 labels. Typo alert: The new description of *hive.metastore.schema.verification* omits the word "metastore" -- bq. Verify that version information stored in is compatible with one from Hive jars. The original was -- bq. Verify that version information stored in metastore matches with one from Hive jars. > datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling > downgrade > -- > > Key: HIVE-14152 > URL: https://issues.apache.org/jira/browse/HIVE-14152 > Project: Hive > Issue Type: Bug > Components: Metastore >Reporter: Daniel Dai >Assignee: Thejas M Nair > Labels: TODOC2.1.1, TODOC2.2 > Fix For: 2.2.0, 2.1.1 > > Attachments: HIVE-14152.1.patch, HIVE-14152.2.patch, > HIVE-14152.3.patch, HIVE-14152.addendum.patch > > > We see the following issue when downgrading metastore: > 1. Run some query using new tables > 2. Downgrade metastore > 3. Restart metastore will complain the new table does not exist > In particular, constaints tables does not exist in branch-1. If we run Hive 2 > and create a constraint, then downgrade metastore to Hive 1, datanucleus will > complain: > {code} > javax.jdo.JDOFatalUserException: Error starting up DataNucleus : a class > "org.apache.hadoop.hive.metastore.model.MConstraint" was listed as being > persisted previously in this datastore, yet the class wasnt found. Perhaps it > is used by a different DataNucleus-enabled application in this datastore, or > you have changed your class names. > at > org.datanucleus.api.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:528) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.freezeConfiguration(JDOPersistenceManagerFactory.java:788) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.createPersistenceManagerFactory(JDOPersistenceManagerFactory.java:333) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.getPersistenceManagerFactory(JDOPersistenceManagerFactory.java:202) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at javax.jdo.JDOHelper$16.run(JDOHelper.java:1965) > at java.security.AccessController.doPrivileged(Native Method) > at javax.jdo.JDOHelper.invoke(JDOHelper.java:1960) > at > javax.jdo.JDOHelper.invokeGetPersistenceManagerFactoryOnImplementation(JDOHelper.java:1166) > at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:808) > at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:701) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPMF(ObjectStore.java:377) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPersistenceManager(ObjectStore.java:406) > at > org.apache.hadoop.hive.metastore.ObjectStore.initialize(ObjectStore.java:299) > at > org.apache.hadoop.hive.metastore.ObjectStore.setConf(ObjectStore.java:266) > at >
[jira] [Commented] (HIVE-14152) datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling downgrade
[ https://issues.apache.org/jira/browse/HIVE-14152?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15371695#comment-15371695 ] Sushanth Sowmyan commented on HIVE-14152: - +1. > datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling > downgrade > -- > > Key: HIVE-14152 > URL: https://issues.apache.org/jira/browse/HIVE-14152 > Project: Hive > Issue Type: Bug > Components: Metastore >Reporter: Daniel Dai >Assignee: Thejas M Nair > Attachments: HIVE-14152.1.patch, HIVE-14152.2.patch, > HIVE-14152.3.patch > > > We see the following issue when downgrading metastore: > 1. Run some query using new tables > 2. Downgrade metastore > 3. Restart metastore will complain the new table does not exist > In particular, constaints tables does not exist in branch-1. If we run Hive 2 > and create a constraint, then downgrade metastore to Hive 1, datanucleus will > complain: > {code} > javax.jdo.JDOFatalUserException: Error starting up DataNucleus : a class > "org.apache.hadoop.hive.metastore.model.MConstraint" was listed as being > persisted previously in this datastore, yet the class wasnt found. Perhaps it > is used by a different DataNucleus-enabled application in this datastore, or > you have changed your class names. > at > org.datanucleus.api.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:528) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.freezeConfiguration(JDOPersistenceManagerFactory.java:788) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.createPersistenceManagerFactory(JDOPersistenceManagerFactory.java:333) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.getPersistenceManagerFactory(JDOPersistenceManagerFactory.java:202) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at javax.jdo.JDOHelper$16.run(JDOHelper.java:1965) > at java.security.AccessController.doPrivileged(Native Method) > at javax.jdo.JDOHelper.invoke(JDOHelper.java:1960) > at > javax.jdo.JDOHelper.invokeGetPersistenceManagerFactoryOnImplementation(JDOHelper.java:1166) > at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:808) > at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:701) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPMF(ObjectStore.java:377) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPersistenceManager(ObjectStore.java:406) > at > org.apache.hadoop.hive.metastore.ObjectStore.initialize(ObjectStore.java:299) > at > org.apache.hadoop.hive.metastore.ObjectStore.setConf(ObjectStore.java:266) > at > org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:76) > at > org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:136) > at > org.apache.hadoop.hive.metastore.RawStoreProxy.(RawStoreProxy.java:60) > at > org.apache.hadoop.hive.metastore.RawStoreProxy.getProxy(RawStoreProxy.java:69) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.newRawStore(HiveMetaStore.java:650) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:628) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:677) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:484) > at > org.apache.hadoop.hive.metastore.RetryingHMSHandler.(RetryingHMSHandler.java:77) > at > org.apache.hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:83) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:5905) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:5900) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.startMetaStore(HiveMetaStore.java:6159) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.main(HiveMetaStore.java:6084) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at org.apache.hadoop.util.RunJar.run(RunJar.java:221) > at
[jira] [Commented] (HIVE-14152) datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling downgrade
[ https://issues.apache.org/jira/browse/HIVE-14152?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15371514#comment-15371514 ] Thejas M Nair commented on HIVE-14152: -- The test failures are unrelated, they happen in runs with other jiras as well. > datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling > downgrade > -- > > Key: HIVE-14152 > URL: https://issues.apache.org/jira/browse/HIVE-14152 > Project: Hive > Issue Type: Bug > Components: Metastore >Reporter: Daniel Dai >Assignee: Thejas M Nair > Attachments: HIVE-14152.1.patch, HIVE-14152.2.patch, > HIVE-14152.3.patch > > > We see the following issue when downgrading metastore: > 1. Run some query using new tables > 2. Downgrade metastore > 3. Restart metastore will complain the new table does not exist > In particular, constaints tables does not exist in branch-1. If we run Hive 2 > and create a constraint, then downgrade metastore to Hive 1, datanucleus will > complain: > {code} > javax.jdo.JDOFatalUserException: Error starting up DataNucleus : a class > "org.apache.hadoop.hive.metastore.model.MConstraint" was listed as being > persisted previously in this datastore, yet the class wasnt found. Perhaps it > is used by a different DataNucleus-enabled application in this datastore, or > you have changed your class names. > at > org.datanucleus.api.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:528) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.freezeConfiguration(JDOPersistenceManagerFactory.java:788) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.createPersistenceManagerFactory(JDOPersistenceManagerFactory.java:333) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.getPersistenceManagerFactory(JDOPersistenceManagerFactory.java:202) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at javax.jdo.JDOHelper$16.run(JDOHelper.java:1965) > at java.security.AccessController.doPrivileged(Native Method) > at javax.jdo.JDOHelper.invoke(JDOHelper.java:1960) > at > javax.jdo.JDOHelper.invokeGetPersistenceManagerFactoryOnImplementation(JDOHelper.java:1166) > at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:808) > at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:701) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPMF(ObjectStore.java:377) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPersistenceManager(ObjectStore.java:406) > at > org.apache.hadoop.hive.metastore.ObjectStore.initialize(ObjectStore.java:299) > at > org.apache.hadoop.hive.metastore.ObjectStore.setConf(ObjectStore.java:266) > at > org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:76) > at > org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:136) > at > org.apache.hadoop.hive.metastore.RawStoreProxy.(RawStoreProxy.java:60) > at > org.apache.hadoop.hive.metastore.RawStoreProxy.getProxy(RawStoreProxy.java:69) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.newRawStore(HiveMetaStore.java:650) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:628) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:677) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:484) > at > org.apache.hadoop.hive.metastore.RetryingHMSHandler.(RetryingHMSHandler.java:77) > at > org.apache.hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:83) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:5905) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:5900) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.startMetaStore(HiveMetaStore.java:6159) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.main(HiveMetaStore.java:6084) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at
[jira] [Commented] (HIVE-14152) datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling downgrade
[ https://issues.apache.org/jira/browse/HIVE-14152?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15371509#comment-15371509 ] Thejas M Nair commented on HIVE-14152: -- [~sushanth] Can you please review this change ? > datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling > downgrade > -- > > Key: HIVE-14152 > URL: https://issues.apache.org/jira/browse/HIVE-14152 > Project: Hive > Issue Type: Bug > Components: Metastore >Reporter: Daniel Dai >Assignee: Thejas M Nair > Attachments: HIVE-14152.1.patch, HIVE-14152.2.patch, > HIVE-14152.3.patch > > > We see the following issue when downgrading metastore: > 1. Run some query using new tables > 2. Downgrade metastore > 3. Restart metastore will complain the new table does not exist > In particular, constaints tables does not exist in branch-1. If we run Hive 2 > and create a constraint, then downgrade metastore to Hive 1, datanucleus will > complain: > {code} > javax.jdo.JDOFatalUserException: Error starting up DataNucleus : a class > "org.apache.hadoop.hive.metastore.model.MConstraint" was listed as being > persisted previously in this datastore, yet the class wasnt found. Perhaps it > is used by a different DataNucleus-enabled application in this datastore, or > you have changed your class names. > at > org.datanucleus.api.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:528) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.freezeConfiguration(JDOPersistenceManagerFactory.java:788) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.createPersistenceManagerFactory(JDOPersistenceManagerFactory.java:333) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.getPersistenceManagerFactory(JDOPersistenceManagerFactory.java:202) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at javax.jdo.JDOHelper$16.run(JDOHelper.java:1965) > at java.security.AccessController.doPrivileged(Native Method) > at javax.jdo.JDOHelper.invoke(JDOHelper.java:1960) > at > javax.jdo.JDOHelper.invokeGetPersistenceManagerFactoryOnImplementation(JDOHelper.java:1166) > at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:808) > at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:701) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPMF(ObjectStore.java:377) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPersistenceManager(ObjectStore.java:406) > at > org.apache.hadoop.hive.metastore.ObjectStore.initialize(ObjectStore.java:299) > at > org.apache.hadoop.hive.metastore.ObjectStore.setConf(ObjectStore.java:266) > at > org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:76) > at > org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:136) > at > org.apache.hadoop.hive.metastore.RawStoreProxy.(RawStoreProxy.java:60) > at > org.apache.hadoop.hive.metastore.RawStoreProxy.getProxy(RawStoreProxy.java:69) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.newRawStore(HiveMetaStore.java:650) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:628) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:677) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:484) > at > org.apache.hadoop.hive.metastore.RetryingHMSHandler.(RetryingHMSHandler.java:77) > at > org.apache.hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:83) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:5905) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:5900) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.startMetaStore(HiveMetaStore.java:6159) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.main(HiveMetaStore.java:6084) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at org.apache.hadoop.util.RunJar.run(RunJar.java:221) > at
[jira] [Commented] (HIVE-14152) datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling downgrade
[ https://issues.apache.org/jira/browse/HIVE-14152?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15370653#comment-15370653 ] Hive QA commented on HIVE-14152: Here are the results of testing the latest attachment: https://issues.apache.org/jira/secure/attachment/12817080/HIVE-14152.3.patch {color:green}SUCCESS:{color} +1 due to 1 test(s) being added or modified. {color:red}ERROR:{color} -1 due to 7 failed/errored test(s), 10304 tests executed *Failed tests:* {noformat} org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver_acid_globallimit org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver_stats_list_bucket org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver_subquery_multiinsert org.apache.hadoop.hive.cli.TestMiniLlapCliDriver.testCliDriver_vector_complex_all org.apache.hadoop.hive.cli.TestMiniLlapCliDriver.testCliDriver_vector_complex_join org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_acid_globallimit org.apache.hadoop.hive.cli.TestMinimrCliDriver.org.apache.hadoop.hive.cli.TestMinimrCliDriver {noformat} Test results: https://builds.apache.org/job/PreCommit-HIVE-MASTER-Build/465/testReport Console output: https://builds.apache.org/job/PreCommit-HIVE-MASTER-Build/465/console Test logs: http://ec2-204-236-174-241.us-west-1.compute.amazonaws.com/logs/PreCommit-HIVE-MASTER-Build-465/ Messages: {noformat} Executing org.apache.hive.ptest.execution.TestCheckPhase Executing org.apache.hive.ptest.execution.PrepPhase Executing org.apache.hive.ptest.execution.ExecutionPhase Executing org.apache.hive.ptest.execution.ReportingPhase Tests exited with: TestsFailedException: 7 tests failed {noformat} This message is automatically generated. ATTACHMENT ID: 12817080 - PreCommit-HIVE-MASTER-Build > datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling > downgrade > -- > > Key: HIVE-14152 > URL: https://issues.apache.org/jira/browse/HIVE-14152 > Project: Hive > Issue Type: Bug > Components: Metastore >Reporter: Daniel Dai >Assignee: Thejas M Nair > Attachments: HIVE-14152.1.patch, HIVE-14152.2.patch, > HIVE-14152.3.patch > > > We see the following issue when downgrading metastore: > 1. Run some query using new tables > 2. Downgrade metastore > 3. Restart metastore will complain the new table does not exist > In particular, constaints tables does not exist in branch-1. If we run Hive 2 > and create a constraint, then downgrade metastore to Hive 1, datanucleus will > complain: > {code} > javax.jdo.JDOFatalUserException: Error starting up DataNucleus : a class > "org.apache.hadoop.hive.metastore.model.MConstraint" was listed as being > persisted previously in this datastore, yet the class wasnt found. Perhaps it > is used by a different DataNucleus-enabled application in this datastore, or > you have changed your class names. > at > org.datanucleus.api.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:528) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.freezeConfiguration(JDOPersistenceManagerFactory.java:788) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.createPersistenceManagerFactory(JDOPersistenceManagerFactory.java:333) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.getPersistenceManagerFactory(JDOPersistenceManagerFactory.java:202) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at javax.jdo.JDOHelper$16.run(JDOHelper.java:1965) > at java.security.AccessController.doPrivileged(Native Method) > at javax.jdo.JDOHelper.invoke(JDOHelper.java:1960) > at > javax.jdo.JDOHelper.invokeGetPersistenceManagerFactoryOnImplementation(JDOHelper.java:1166) > at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:808) > at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:701) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPMF(ObjectStore.java:377) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPersistenceManager(ObjectStore.java:406) > at > org.apache.hadoop.hive.metastore.ObjectStore.initialize(ObjectStore.java:299) > at > org.apache.hadoop.hive.metastore.ObjectStore.setConf(ObjectStore.java:266) > at > org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:76) > at > org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:136) > at > org.apache.hadoop.hive.metastore.RawStoreProxy.(RawStoreProxy.java:60) >
[jira] [Commented] (HIVE-14152) datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling downgrade
[ https://issues.apache.org/jira/browse/HIVE-14152?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15370164#comment-15370164 ] Hive QA commented on HIVE-14152: Here are the results of testing the latest attachment: https://issues.apache.org/jira/secure/attachment/12817053/HIVE-14152.2.patch {color:red}ERROR:{color} -1 due to no test(s) being added or modified. {color:red}ERROR:{color} -1 due to 11 failed/errored test(s), 10282 tests executed *Failed tests:* {noformat} TestMiniTezCliDriver-auto_sortmerge_join_7.q-cbo_windowing.q-vector_interval_2.q-and-12-more - did not produce a TEST-*.xml file org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver_acid_globallimit org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver_list_bucket_dml_12 org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver_stats_list_bucket org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver_subquery_multiinsert org.apache.hadoop.hive.cli.TestMiniLlapCliDriver.testCliDriver_vector_complex_all org.apache.hadoop.hive.cli.TestMiniLlapCliDriver.testCliDriver_vector_complex_join org.apache.hadoop.hive.cli.TestMiniTezCliDriver.testCliDriver_acid_globallimit org.apache.hadoop.hive.cli.TestMinimrCliDriver.org.apache.hadoop.hive.cli.TestMinimrCliDriver org.apache.hadoop.hive.llap.tezplugins.TestLlapTaskSchedulerService.testDelayedLocalityNodeCommErrorImmediateAllocation org.apache.hadoop.hive.metastore.TestMetastoreVersion.testMetastoreVersion {noformat} Test results: https://builds.apache.org/job/PreCommit-HIVE-MASTER-Build/461/testReport Console output: https://builds.apache.org/job/PreCommit-HIVE-MASTER-Build/461/console Test logs: http://ec2-204-236-174-241.us-west-1.compute.amazonaws.com/logs/PreCommit-HIVE-MASTER-Build-461/ Messages: {noformat} Executing org.apache.hive.ptest.execution.TestCheckPhase Executing org.apache.hive.ptest.execution.PrepPhase Executing org.apache.hive.ptest.execution.ExecutionPhase Executing org.apache.hive.ptest.execution.ReportingPhase Tests exited with: TestsFailedException: 11 tests failed {noformat} This message is automatically generated. ATTACHMENT ID: 12817053 - PreCommit-HIVE-MASTER-Build > datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling > downgrade > -- > > Key: HIVE-14152 > URL: https://issues.apache.org/jira/browse/HIVE-14152 > Project: Hive > Issue Type: Bug > Components: Metastore >Reporter: Daniel Dai >Assignee: Thejas M Nair > Attachments: HIVE-14152.1.patch, HIVE-14152.2.patch > > > We see the following issue when downgrading metastore: > 1. Run some query using new tables > 2. Downgrade metastore > 3. Restart metastore will complain the new table does not exist > In particular, constaints tables does not exist in branch-1. If we run Hive 2 > and create a constraint, then downgrade metastore to Hive 1, datanucleus will > complain: > {code} > javax.jdo.JDOFatalUserException: Error starting up DataNucleus : a class > "org.apache.hadoop.hive.metastore.model.MConstraint" was listed as being > persisted previously in this datastore, yet the class wasnt found. Perhaps it > is used by a different DataNucleus-enabled application in this datastore, or > you have changed your class names. > at > org.datanucleus.api.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:528) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.freezeConfiguration(JDOPersistenceManagerFactory.java:788) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.createPersistenceManagerFactory(JDOPersistenceManagerFactory.java:333) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.getPersistenceManagerFactory(JDOPersistenceManagerFactory.java:202) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at javax.jdo.JDOHelper$16.run(JDOHelper.java:1965) > at java.security.AccessController.doPrivileged(Native Method) > at javax.jdo.JDOHelper.invoke(JDOHelper.java:1960) > at > javax.jdo.JDOHelper.invokeGetPersistenceManagerFactoryOnImplementation(JDOHelper.java:1166) > at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:808) > at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:701) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPMF(ObjectStore.java:377) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPersistenceManager(ObjectStore.java:406) > at >
[jira] [Commented] (HIVE-14152) datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling downgrade
[ https://issues.apache.org/jira/browse/HIVE-14152?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15362577#comment-15362577 ] Hive QA commented on HIVE-14152: Here are the results of testing the latest attachment: https://issues.apache.org/jira/secure/attachment/12816138/HIVE-14152.1.patch {color:red}ERROR:{color} -1 due to no test(s) being added or modified. {color:red}ERROR:{color} -1 due to 29 failed/errored test(s), 9958 tests executed *Failed tests:* {noformat} TestCliDriver-bool_literal.q-authorization_cli_createtab.q-explain_ddl.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-cbo_rp_join1.q-union_top_level.q-insert_update_delete.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-create_func1.q-bucketmapjoin3.q-enforce_order.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-describe_xpath.q-autogen_colalias.q-udf_named_struct.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-encryption_join_with_different_encryption_keys.q-bucketcontext_3.q-udf_smallint.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-groupby4.q-convert_enum_to_string.q-mapjoin_filter_on_outerjoin.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-index_compact.q-merge_dynamic_partition2.q-cbo_rp_subq_exists.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-nullscript.q-vector_char_mapjoin1.q-load_dyn_part3.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-parquet_ppd_decimal.q-cluster.q-groupby_sort_6.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-ptf_general_queries.q-unionDistinct_1.q-udf_version.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-sample_islocalmode_hook_use_metadata.q-cbo_rp_semijoin.q-udf_when.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-schema_evol_text_vec_mapwork_part_all_complex.q-metadataonly1.q-deleteAnalyze.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-skewjoinopt3.q-rcfile_merge1.q-multigroupby_singlemr.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-stats13.q-join_parse.q-sort_merge_join_desc_2.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-stats_publisher_error_1.q-auto_join1.q-cast_to_int.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-tez_joins_explain.q-rename_column.q-varchar_serde.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-udf_double.q-join11.q-join18.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-udf_locate.q-join32_lessSize.q-correlationoptimizer8.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-udf_to_float.q-decimal_precision2.q-ppd_gby_join.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-unicode_notation.q-gen_udf_example_add10.q-ppd_join4.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-vector_complex_join.q-interval_udf.q-udf_classloader_dynamic_dependency_resolution.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-vector_distinct_2.q-cte_mat_1.q-update_after_multiple_inserts_special_characters.q-and-12-more - did not produce a TEST-*.xml file TestCliDriver-vector_partition_diff_num_cols.q-stats2.q-union11.q-and-12-more - did not produce a TEST-*.xml file org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver_list_bucket_dml_12 org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver_list_bucket_dml_13 org.apache.hadoop.hive.cli.TestCliDriver.testCliDriver_subquery_multiinsert org.apache.hadoop.hive.cli.TestMiniLlapCliDriver.testCliDriver_vector_complex_all org.apache.hadoop.hive.cli.TestMiniLlapCliDriver.testCliDriver_vector_complex_join org.apache.hadoop.hive.metastore.TestMetastoreVersion.testMetastoreVersion {noformat} Test results: https://builds.apache.org/job/PreCommit-HIVE-MASTER-Build/368/testReport Console output: https://builds.apache.org/job/PreCommit-HIVE-MASTER-Build/368/console Test logs: http://ec2-50-18-27-0.us-west-1.compute.amazonaws.com/logs/PreCommit-HIVE-MASTER-Build-368/ Messages: {noformat} Executing org.apache.hive.ptest.execution.TestCheckPhase Executing org.apache.hive.ptest.execution.PrepPhase Executing org.apache.hive.ptest.execution.ExecutionPhase Executing org.apache.hive.ptest.execution.ReportingPhase Tests exited with: TestsFailedException: 29 tests failed {noformat} This message is automatically generated. ATTACHMENT ID: 12816138 - PreCommit-HIVE-MASTER-Build > datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling > downgrade > -- > > Key: HIVE-14152 > URL: https://issues.apache.org/jira/browse/HIVE-14152 > Project: Hive > Issue Type: Bug > Components: Metastore >Reporter: Daniel Dai >Assignee: Daniel Dai > Attachments: HIVE-14152.1.patch
[jira] [Commented] (HIVE-14152) datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling downgrade
[ https://issues.apache.org/jira/browse/HIVE-14152?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15361772#comment-15361772 ] Thejas M Nair commented on HIVE-14152: -- We already have safety checks in the form of hive.metastore.schema.verification, which are more advanced as it checks for schema *compatibility* instead of *exact match* . This makes sense in case of upgrade-downgrade scenarios of hive, as newer versions of schema are compatible with older ones, and schema doesn't need to be downgraded on a downgrade of hive version. This also allows for running of two versions of hive against same instance of metastore rdbms. > datanucleus.autoStartMechanismMode should set to 'Ignored' to allow rolling > downgrade > -- > > Key: HIVE-14152 > URL: https://issues.apache.org/jira/browse/HIVE-14152 > Project: Hive > Issue Type: Bug > Components: Metastore >Reporter: Daniel Dai >Assignee: Daniel Dai > > We see the following issue when downgrading metastore: > 1. Run some query using new tables > 2. Downgrade metastore > 3. Restart metastore will complain the new table does not exist > In particular, constaints tables does not exist in branch-1. If we run Hive 2 > and create a constraint, then downgrade metastore to Hive 1, datanucleus will > complain: > {code} > javax.jdo.JDOFatalUserException: Error starting up DataNucleus : a class > "org.apache.hadoop.hive.metastore.model.MConstraint" was listed as being > persisted previously in this datastore, yet the class wasnt found. Perhaps it > is used by a different DataNucleus-enabled application in this datastore, or > you have changed your class names. > at > org.datanucleus.api.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:528) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.freezeConfiguration(JDOPersistenceManagerFactory.java:788) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.createPersistenceManagerFactory(JDOPersistenceManagerFactory.java:333) > at > org.datanucleus.api.jdo.JDOPersistenceManagerFactory.getPersistenceManagerFactory(JDOPersistenceManagerFactory.java:202) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at javax.jdo.JDOHelper$16.run(JDOHelper.java:1965) > at java.security.AccessController.doPrivileged(Native Method) > at javax.jdo.JDOHelper.invoke(JDOHelper.java:1960) > at > javax.jdo.JDOHelper.invokeGetPersistenceManagerFactoryOnImplementation(JDOHelper.java:1166) > at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:808) > at javax.jdo.JDOHelper.getPersistenceManagerFactory(JDOHelper.java:701) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPMF(ObjectStore.java:377) > at > org.apache.hadoop.hive.metastore.ObjectStore.getPersistenceManager(ObjectStore.java:406) > at > org.apache.hadoop.hive.metastore.ObjectStore.initialize(ObjectStore.java:299) > at > org.apache.hadoop.hive.metastore.ObjectStore.setConf(ObjectStore.java:266) > at > org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:76) > at > org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:136) > at > org.apache.hadoop.hive.metastore.RawStoreProxy.(RawStoreProxy.java:60) > at > org.apache.hadoop.hive.metastore.RawStoreProxy.getProxy(RawStoreProxy.java:69) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.newRawStore(HiveMetaStore.java:650) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:628) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:677) > at > org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:484) > at > org.apache.hadoop.hive.metastore.RetryingHMSHandler.(RetryingHMSHandler.java:77) > at > org.apache.hadoop.hive.metastore.RetryingHMSHandler.getProxy(RetryingHMSHandler.java:83) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:5905) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.newRetryingHMSHandler(HiveMetaStore.java:5900) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.startMetaStore(HiveMetaStore.java:6159) > at > org.apache.hadoop.hive.metastore.HiveMetaStore.main(HiveMetaStore.java:6084) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >