[ https://issues.apache.org/jira/browse/HIVE-21739?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16841772#comment-16841772 ]
Alan Gates commented on HIVE-21739: ----------------------------------- This patch only makes the changes for MySQL. You'll need to make the same changes for the Derby, Oracle, Postgres, and SqlServer scripts. Did you run the DBInstall tests? These don't run as part of the standard test run, but they test db install and upgrade so you'll want to make sure and run them. > Make metastore DB backward compatible with pre-catalog versions of hive. > ------------------------------------------------------------------------ > > Key: HIVE-21739 > URL: https://issues.apache.org/jira/browse/HIVE-21739 > Project: Hive > Issue Type: Sub-task > Affects Versions: 1.2.0, 2.1.1 > Reporter: Aditya Shah > Assignee: Aditya Shah > Priority: Major > Fix For: 4.0.0 > > Attachments: HIVE-21739.1.patch, HIVE-21739.patch > > > Since the addition of foreign key constraint between Database ('DBS') table > and catalogs ('CTLGS') table in HIVE-18755 we are able to run a simple create > database command with an older version of Metastore Server. This is due to > older versions having JDO schema as per older schema of 'DBS' which did not > have an additional 'CTLG_NAME' column. > The error is as follows: > {code:java} > org.apache.hadoop.hive.ql.metadata.HiveException: > MetaException(message:Exception thrown flushing changes to datastore) > .... > java.sql.BatchUpdateException: Cannot add or update a child row: a foreign > key constraint fails ("metastore_1238"."DBS", CONSTRAINT "CTLG_FK1" FOREIGN > KEY ("CTLG_NAME") REFERENCES "CTLGS" ("NAME")) > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)