[
https://issues.apache.org/jira/browse/DRILL-6412?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Vitalii Diravka updated DRILL-6412:
-----------------------------------
Summary: Clients are created for all storages even for disabled plugins
(was: Hive default storage plugin template shows "null" when drillbit is
started)
> Clients are created for all storages even for disabled plugins
> --------------------------------------------------------------
>
> Key: DRILL-6412
> URL: https://issues.apache.org/jira/browse/DRILL-6412
> Project: Apache Drill
> Issue Type: Bug
> Components: Storage - Hive, Storage - Other
> Affects Versions: 1.13.0
> Reporter: Vitalii Diravka
> Priority: Minor
> Fix For: Future
>
>
> The storage plugin configs for Hive storage plugin is not shown for the case
> when some error happened while instantiating HiveMetaStoreClient:
> {code}
>
> distribution/target/apache-drill-1.14.0-SNAPSHOT/apache-drill-1.14.0-SNAPSHOT/bin/drill-embedded
>
> May 12, 2018 5:21:45 PM org.glassfish.jersey.server.ApplicationHandler
> initialize
> INFO: Initiating Jersey application, version Jersey: 2.8 2014-04-29
> 01:25:26...
> apache drill 1.14.0-SNAPSHOT
> "the only truly happy people are children, the creative minority and drill
> users"
> 0: jdbc:drill:zk=local> 17:21:54.609 [qtp17064901-66] ERROR
> o.a.h.h.metastore.RetryingHMSHandler - MetaException(message:Version
> information not found in metastore. )
> at
> org.apache.hadoop.hive.metastore.ObjectStore.checkSchema(ObjectStore.java:7564)
> at
> org.apache.hadoop.hive.metastore.ObjectStore.verifySchema(ObjectStore.java:7542)
> 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.hive.metastore.RawStoreProxy.invoke(RawStoreProxy.java:101)
> at com.sun.proxy.$Proxy72.verifySchema(Unknown Source)
> at
> org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMSForConf(HiveMetaStore.java:591)
> at
> org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:584)
> at
> org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:651)
> ....
> at
> org.apache.drill.exec.store.hive.DrillHiveMetaStoreClient.createCloseableClientWithCaching(DrillHiveMetaStoreClient.java:136)
> at
> org.apache.drill.exec.store.hive.schema.HiveSchemaFactory.<init>(HiveSchemaFactory.java:76)
> at
> org.apache.drill.exec.store.hive.HiveStoragePlugin.<init>(HiveStoragePlugin.java:69)
> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method)
> at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
> at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
> at
> org.apache.drill.exec.store.StoragePluginRegistryImpl.create(StoragePluginRegistryImpl.java:345)
> at
> org.apache.drill.exec.store.StoragePluginRegistryImpl.createOrUpdate(StoragePluginRegistryImpl.java:238)
> {code}
> When drillbit is starting and StoragePluginRegistryImpl creates the
> HIveStoragePlugin the DrillHiveMetaStoreClient is instantiated even when it
> is disabled in the plugin template configs and there is no Hive on the
> machine.
> The solution is to check status for plugin from the template, when it is
> disabled there is no need to instantiate the client for the appropriate
> storage.
> The workaround is to use "hive.metastore.schema.verification": "false", for
> this case DrillHiveMetaStoreClient is created successfully (but for proper
> working it should be performed only when plugin is enabled).
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)