Uploaded image for project: 'Apache Drill'
  1. Apache Drill
  2. DRILL-6412

Clients are created for all storages even for disabled plugins

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Reopened
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: 1.13.0
    • Fix Version/s: None
    • Labels:
      None

      Description

      The storage plugin configs for Hive storage plugin is not shown for the case when some error happened while instantiating HiveMetaStoreClient:

       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)
      

      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).

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                vitalii Vitalii Diravka
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated: