Uploaded image for project: 'Ambari'
  1. Ambari
  2. AMBARI-12257

hive-site/hive.metastore.sasl.enabled value incorrect when adding Hive to a Kerberized Cluster

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Critical
    • Resolution: Fixed
    • 2.1.0
    • 2.3.0
    • ambari-server

    Description

      When adding Hive to an existing Kerberized cluster, the hive-site/hive.metastore.sasl.enabled value is set to false when it should be true. If Hive was installed before enabling Kerberos,
      hive-site/hive.metastore.sasl.enabled is set to true after enabling Kerberos.

      If hive-site/hive.metastore.sasl.enabled is false in a Kerberized cluster, the following error can be seen in the hiverserver2.log:

      /var/log/hive/hiveserver2.log
      2015-07-01 23:35:16,128 ERROR [HiveServer2-Handler-Pool: Thread-37]: server.TThreadPoolServer (TThreadPoolServer.java:run(296)) - Error occurred during processing of message.
      java.lang.RuntimeException: org.apache.thrift.transport.TTransportException: Unsupported mechanism type GSSAPI
              at org.apache.thrift.transport.TSaslServerTransport$Factory.getTransport(TSaslServerTransport.java:219)
              at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:268)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
              at java.lang.Thread.run(Thread.java:745)
      Caused by: org.apache.thrift.transport.TTransportException: Unsupported mechanism type GSSAPI
              at org.apache.thrift.transport.TSaslTransport.sendAndThrowMessage(TSaslTransport.java:232)
              at org.apache.thrift.transport.TSaslServerTransport.handleSaslStartMessage(TSaslServerTransport.java:138)
              at org.apache.thrift.transport.TSaslTransport.open(TSaslTransport.java:271)
              at org.apache.thrift.transport.TSaslServerTransport.open(TSaslServerTransport.java:41)
              at org.apache.thrift.transport.TSaslServerTransport$Factory.getTransport(TSaslServerTransport.java:216)
              ... 4 more
      

      Cause
      It appears that the front end is updating the Kerberos Descriptor artifact with old data rather than the data the is specified on the stack's Kerberos Descriptor. This occurs during the transition between the "Review" and "Install, Start, Test" pages of the "Add Service Wizard".

      Solution
      Use the current Kerberos Descriptor's values as default value for the updated Kerberos Descriptor and update only what the user changes in the relevant fields.

      Attachments

        Activity

          People

            rlevas Robert Levas
            rlevas Robert Levas
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: