Anyone experienced similar issues?

________________________________
Da: Edoardo Ferrante <[email protected]>
Inviato: sabato 8 luglio 2017 12:01
A: [email protected]
Oggetto: Non-local session path expected to be non-null trying to write batch 
on Hive


Greetings,

I'm currently using HDP 2.5 to get a working dataflow stack on a 6 node cluster 
(2 masters + 4 slaves, no Kerberos) using Kafka (2.10_0.10), Storm (1.0.1) and 
Hive2 (1.2.1). Storm (nimbus is on master-2) is able to communicate with Kafka 
(broker is on master-1), but can't seemingly operate on Hive (on master-1), 
even though it manages to connect to its metastore. For the Storm topology I'm 
using Trident APIs, you can find the Hive Bolt in the attached files.


I thought originally it was a problem of permissions on either HDFS or the 
local filesystem, but even though I set 777 permissions on /tmp/hive, there's 
still this issue.

In core-site.xml:

  *   hadoop.proxyuser.hcat.group
  *   hadoop.proxyuser.hcat.hosts

  *   hadoop.proxyuser.hdfs.groups
  *   hadoop.proxyuser.hdfs.hosts
  *   hadoop.proxyuser.hive.groups
  *   hadoop.proxyuser.hive.hosts
  *   hadoop.proxyuser.root.groups
  *   hadoop.proxyuser.root.hosts

are all set to '*'.

Hive2, as far as I see is correctly set to work with transactions, being the 
target table with transactional=true, stored as orc and bucketed. In the 
hive-site.xml:

  *   hive.compactor.worker.threads = 1
  *   hive.compactor.initiator.on = true
  *   hive.txn.manager = org.apache.hadoop.hive.ql.lockmgr.DbTxnManager

I get a Nullpointer Exception, you may find the stack trace among the attached 
files.

>From what I can gather, the NullpointerException is thrown in the following 
>method inside SessionState:


  1.  public static Path getHDFSSessionPath(Configuration conf) {
  2.    SessionState ss = SessionState.get();
  3.    if (ss == null) {
  4.            String sessionPathString = conf.get(HDFS_SESSION_PATH_KEY);
  5.            Preconditions.checkNotNull(sessionPathString,  "Conf non-local 
session path expected to be non-null");
  6.            return new Path(sessionPathString);
  7.    }
  8.    Preconditions.checkNotNull(ss.hdfsSessionPath,  "Non-local session path 
expected to be non-null");
  9.    return ss.hdfsSessionPath;
  10. }


Specifically, by:

  1.  Preconditions.checkNotNull(ss.hdfsSessionPath, "Non-local session path 
expected to be non-null");

So, it seems to be an hdfs related issue, but I can't understand why it's 
happening.


Reply via email to