Denes Arvay created NIFI-8285: --------------------------------- Summary: NullPointerException in HBase_2_ClientService if kerberos is not enabled Key: NIFI-8285 URL: https://issues.apache.org/jira/browse/NIFI-8285 Project: Apache NiFi Issue Type: Bug Reporter: Denes Arvay
It seems this is a regression after NIFI-7954 The stack trace is the following: {code:java} 2021-03-02 14:29:37,171 WARN [Timer-Driven Process Thread-5] o.a.n.controller.tasks.ConnectableTask Administratively Yielding FetchDistributedMapCache[id=5aa4b8b0-0e2a-3e83-9163-c43105d05221] due to uncaught Exception: java.lang.NullPointerException java.lang.NullPointerException: null at org.apache.nifi.hadoop.SecurityUtil.callWithUgi(SecurityUtil.java:149) at org.apache.nifi.hbase.HBase_2_ClientService.scan(HBase_2_ClientService.java:620) 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.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:87) at com.sun.proxy.$Proxy99.scan(Unknown Source) at org.apache.nifi.hbase.HBase_2_ClientMapCacheService.get(HBase_2_ClientMapCacheService.java:217) 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.nifi.controller.service.StandardControllerServiceInvocationHandler.invoke(StandardControllerServiceInvocationHandler.java:87) at com.sun.proxy.$Proxy90.get(Unknown Source) at org.apache.nifi.processors.standard.FetchDistributedMapCache.onTrigger(FetchDistributedMapCache.java:230) at org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27) at org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1176) at org.apache.nifi.controller.tasks.ConnectableTask.invoke(ConnectableTask.java:213) at org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run(TimerDrivenSchedulingAgent.java:117) at org.apache.nifi.engine.FlowEngine$2.run(FlowEngine.java:110) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) {code} I did some research on this: - {{HBase_2_ClientService.ugi}} is null if kerberos is not configured, see: [HBase_2_ClientService.java#L359-L382|https://github.com/apache/nifi/blob/main/nifi-nar-bundles/nifi-standard-services/nifi-hbase_2-client-service-bundle/nifi-hbase_2-client-service/src/main/java/org/apache/nifi/hbase/HBase_2_ClientService.java#L359-L382] - thus {{getUgi}} returns {{null}} at [HBase_2_ClientService.java#L582] - and [{{SecurityUtil.callWithUgi}}|https://github.com/apache/nifi/blob/main/nifi-nar-bundles/nifi-extension-utils/nifi-hadoop-utils/src/main/java/org/apache/nifi/hadoop/SecurityUtil.java#L154] throws NPEx -- This message was sent by Atlassian Jira (v8.3.4#803005)