Hi Sylvester, I modified a random unit test (TestHiveMetaStoreTimeout.java) with client, and added these lines: client.setMetaConf("metastore.disallow.incompatible.col.type.changes", "false"); client.setMetaConf("hive.metastore.disallow.incompatible.col.type.changes", "false"); The unit test run successfully on master, and on 3.0.0 too. So no exception here.
My guess this could be a problem with multiple versions of hive on classpath. Peter > On Jul 11, 2018, at 19:21, Sylvester Steele <sylvesterstee...@gmail.com> > wrote: > > Hi Peter, > > client.setMetaConf("metastore.disallow.incompatible.col.type.changes", > "false") gets me the same error: > > MetaException(message:Invalid configuration key > metastore.disallow.incompatible.col.type.changes) > > Thanks > > On Wed, Jul 11, 2018 at 12:56 PM, Peter Vary <pv...@cloudera.com > <mailto:pv...@cloudera.com>> wrote: > Hi Sylvester, > > Probably the deprecated configurations are not handled here. Could you please > try metastore.disallow.incompatible.col.type.changes? > Thanks, > Peter > > >> On Jul 11, 2018, at 15:20, Sylvester Steele <sylvesterstee...@gmail.com >> <mailto:sylvesterstee...@gmail.com>> wrote: >> >> Hi Peter, >> >> I upgraded the metastore jar to 3.0.0 and when I do: >> >> ThriftHiveMetastore.Client client = new ThriftHiveMetastore.Client(protocol); >> client.setMetaConf("hive.metastore.disallow.incompatible.col.type.changes", >> "false"); >> >> I get: >> >> MetaException(message:Invalid configuration key >> hive.metastore.disallow.incompatible.col.type.changes) >> >> Am I not setting the property correctly, or will I have to upgrade the hive >> server to version 2.4/3.0 as well? >> >> Thanks! >> >> On Wed, Jul 11, 2018 at 4:56 AM, Peter Vary <pv...@cloudera.com >> <mailto:pv...@cloudera.com>> wrote: >> Hi Sylvester, >> >> You can set this specific configuration value per session since HIVE-17832 - >> Fixed in: Hive 3.0.0, Hive 2.4.0 >> >> So you can do this change this value through thrift if your metastore >> version is higher or equal than 2.4.0, or 3.0.0, but not with 1.2.1 >> >> If you want to use 1.2.1 version you can change the configuration in the >> hive-site.xml which is used by the metastore service. >> >> Hope this helps, >> Peter >> >>> On Jul 10, 2018, at 22:09, Sylvester Steele <sylvesterstee...@gmail.com >>> <mailto:sylvesterstee...@gmail.com>> wrote: >>> >>> Hello, >>> >>> I am using hive-metastore jar version 1.2.1 and Hive version 2.3.2. I'd >>> like to make incompatible schema changes to my Hive tables. >>> >>> The change I'm trying to make is to drop a column, which I am doing like >>> so: table.getSd().setCols(remaining_cols). I'm dropping an int column. The >>> column following it is a struct column, so my understanding is that it >>> assumes I'm trying to convert an int column to a struct column. >>> >>> The error I get is: >>> >>> InvalidOperationException(message:The following columns have types >>> incompatible with the existing columns in their respective positions... >>> >>> Doing >>> >>> ThriftHiveMetastore.Client client = new >>> ThriftHiveMetastore.Client(protocol); >>> client.get_config_value("hive.metastore.disallow.incompatible.col.type.changes", >>> "default_value"); >>> >>> gives me a true, which explains the failure earlier. How do I override this >>> value to false? Also, AFAICT the default value is supposed to be false, so >>> I'm not sure why this is returning true. I checked the hive-site.xml file >>> and it doesn't have this set. >>> >>> Thanks for your help! >>> >> >> > >