RangaSamudrala opened a new issue, #82:
URL: https://github.com/apache/accumulo-proxy/issues/82

   Hello
   I am trying to import data into Accumulo using this package.  I have 
truncated the code the log to make it relevant. As one can see login is 
successful. I have been able to successfully invoke hdfs commands like `hdfs 
dfs -rm -r -f hdfs://accumulo-hdfs-ha:8020/imports/custom_data_05222024 ` and 
`hdfs dfs -put -f /imports/custom_data_05222024  
hdfs://accumulo-hdfs-ha:8020/imports/custom_data_05222024`. Even getting a list 
of Tablet servers works. However, invoking **importDirectory** fails with the 
error below.
   
   ```
   proxy_connection = 
AccumuloProxyConnection(AccumuloProxyConnectionParams(hostname=proxy_host, 
port=proxy_port))
   with proxy_connection:
        context = AccumuloProxyConnectionContext(proxy_connection)
        connector = context.create_connector('accumulo', secret)
   
        login = proxy_connection.client.login('accumulo', {'password': secret})
        if login:
             print(f"Accumulo login successful !!!")
        else:
             print(f'Accumulo login failed: {login}. Exiting...')
             sys.exit(1)
   
        client = proxy_connection.client
   
        tservers = client.getTabletServers(login)
        print(f'Tablet Servers: {tservers}')
   
   
        print(f'Accumulo import directory: {table_name} {hdfs_dir}  
{failure_dir} {True}')
        client.importDirectory(login, table_name, hdfs_dir, failure_dir, True)
   ```
   
   Log:
   
   > 
   > Accumulo login successful !!!
   > 
   > Tablet Servers: 
['accumulo-tservers-2.accumulo-tservers.accumulo-dev.svc.cluster.local:9997', 
'accumulo-tservers-4.accumulo-tservers.accumulo-dev.svc.
   > cluster.local:9997', 
'accumulo-tservers-0.accumulo-tservers.accumulo-dev.svc.cluster.local:9997', 
'accumulo-tservers-3.accumulo-tservers.accumulo-dev.
   > svc.cluster.local:9997', 
'accumulo-tservers-1.accumulo-tservers.accumulo-dev.svc.cluster.local:9997']
   > 
   > Accumulo import directory: custom_data 
hdfs://accumulo-hdfs-ha:8020/imports/custom_data_05222024  None True
   > 
   > AccumuloException(msg='org.apache.hadoop.security.KerberosAuthException: 
   > failure to login: javax.security.auth.login.LoginException:
   >  java.lang.NullPointerException: invalid null input:  name\n\t
   > at 
jdk.security.auth/com.sun.security.auth.UnixPrincipal.<init>(UnixPrincipal.java:67)\n\t
   > at 
jdk.security.auth/com.sun.security.auth.module.UnixLoginModule.login(UnixLoginModule.java:129)\n\t
   > at 
java.base/javax.security.auth.login.LoginContext.invoke(LoginContext.java:747)\n\t
   > at 
java.base/javax.security.auth.login.LoginContext$4.run(LoginContext.java:672)\n\t
   > at 
java.base/javax.security.auth.login.LoginContext$4.run(LoginContext.java:670)\n\t
   > at java.base/java.security.AccessController.doPrivileged(Native Method)\n\t
   > at 
java.base/javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:670)\n\t
   > at 
java.base/javax.security.auth.login.LoginContext.login(LoginContext.java:581)\n\t
   > at 
org.apache.hadoop.security.UserGroupInformation$HadoopLoginContext.login(UserGroupInformation.java:2091)\n\t
   > at 
org.apache.hadoop.security.UserGroupInformation.doSubjectLogin(UserGroupInformation.java:2001)\n\t
   > at 
org.apache.hadoop.security.UserGroupInformation.createLoginUser(UserGroupInformation.java:722)\n\t
   > at 
org.apache.hadoop.security.UserGroupInformation.getLoginUser(UserGroupInformation.java:672)\n\t
   > at 
org.apache.hadoop.security.UserGroupInformation.getCurrentUser(UserGroupInformation.java:579)\n\t
   > at 
org.apache.hadoop.fs.FileSystem$Cache$Key.<init>(FileSystem.java:3845)\n\t
   > at 
org.apache.hadoop.fs.FileSystem$Cache$Key.<init>(FileSystem.java:3835)\n\t
   > at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:3623)\n\t
   > at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:557)\n\t
   > at org.apache.hadoop.fs.Path.getFileSystem(Path.java:365)\n\t
   > at 
org.apache.accumulo.core.volume.VolumeImpl.<init>(VolumeImpl.java:45)\n\t
   > at 
org.apache.accumulo.core.volume.VolumeConfiguration.create(VolumeConfiguration.java:152)\n\t
   > at 
org.apache.accumulo.core.volume.VolumeConfiguration.getVolume(VolumeConfiguration.java:39)\n\t
   > at 
org.apache.accumulo.core.clientImpl.bulk.BulkImport.load(BulkImport.java:123)\n\t
   > at 
org.apache.accumulo.proxy.ProxyServer.importDirectory(ProxyServer.java:1769)\n\t
   > at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native 
Method)\n\t
   > at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n\t
   > at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n\t
   > at java.base/java.lang.reflect.Method.invoke(Method.java:566)\n\t
   > at 
org.apache.accumulo.core.trace.TraceUtil.lambda$wrapService$8(TraceUtil.java:232)\n\t
   > at com.sun.proxy.$Proxy9.importDirectory(Unknown Source)\n\t
   > at 
org.apache.accumulo.proxy.thrift.AccumuloProxy$Processor$importDirectory.getResult(AccumuloProxy.java:8073)\n\t
   > at 
org.apache.accumulo.proxy.thrift.AccumuloProxy$Processor$importDirectory.getResult(AccumuloProxy.java:8052)\n\t
   > at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:38)\n\t
   > at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)\n\t
   > at 
org.apache.accumulo.server.rpc.TimedProcessor.process(TimedProcessor.java:61)\n\t
   > at 
org.apache.thrift.server.AbstractNonblockingServer$FrameBuffer.invoke(AbstractNonblockingServer.java:518)\n\t
   > at 
org.apache.accumulo.server.rpc.CustomNonBlockingServer$CustomFrameBuffer.invoke(CustomNonBlockingServer.java:112)\n\t
   > at org.apache.thrift.server.Invocation.run(Invocation.java:18)\n\t
   > at 
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)\n\t
   > at 
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)\n\t
   > at 
org.apache.accumulo.fate.util.LoggingRunnable.run(LoggingRunnable.java:35)\n\t
   > at java.base/java.lang.Thread.run(Thread.java:829)\n')
   > 
   
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@accumulo.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to