I stood up a 4 node Accumulo Cloud. I wrote a Java interface to it and when I
attempt to connect to the table through my interface, I'm getting an
intermittent error that only pops up maybe 1 out of every 5 runs of the code.
I have zookeeper running on all 4 nodes but in my accumulo config file, I only
mentioned the one on the Accumulo name node. I don't know if that would be a
problem or not. Also, the zookeeper stuff is all owned by root, while hadoop
and Accumulo are owned by a different non-root user. I built this cluster from
the ground up (i.e. didn't use Cloudera, etc.), so it's possible that I missed
something.
I'm running Accumulo 1.4.1 with hadoop 1.0.3 and zookeeper 3.3.6.
As you can see from the error below, it is saying that I have an
INVALID_INSTANCEID. However my instance (and credentials) are static final
Strings and are not changing. I haven't had any trouble connecting to the
instance via the shell. Also, the monitor webpage works just fine and shows no
errors.
Here is the error below:
Exception in thread "main"
org.apache.accumulo.core.client.AccumuloSecurityException: Error
INVALID_INSTANCEID - Unknown security exception
at
org.apache.accumulo.core.client.impl.ServerClient.execute(ServerClient.java:73)
at
org.apache.accumulo.core.client.impl.ConnectorImpl.<init>(ConnectorImpl.java:75)
at
org.apache.accumulo.core.client.ZooKeeperInstance.getConnector(ZooKeeperInstance.java:218)
at
jhuapl.redd.coremax.shared.accumuloInterface.AccumuloConnector.deleteTable(AccumuloConnector.java:583)
at
jhuapl.redd.coremax.shared.accumuloInterface.TestAccumuloInterface.main(TestAccumuloInterface.java:27)
Caused by: ThriftSecurityException(user:root, code:INVALID_INSTANCEID)
at
org.apache.accumulo.core.client.impl.thrift.ClientService$authenticateUser_result.read(ClientService.java:7755)
at
org.apache.accumulo.core.client.impl.thrift.ClientService$Client.recv_authenticateUser(ClientService.java:415)
at
org.apache.accumulo.core.client.impl.thrift.ClientService$Client.authenticateUser(ClientService.java:387)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at
org.apache.accumulo.cloudtrace.instrument.thrift.TraceWrap$2.invoke(TraceWrap.java:84)
at $Proxy0.authenticateUser(Unknown Source)
at
org.apache.accumulo.core.client.impl.ConnectorImpl$1.execute(ConnectorImpl.java:78)
at
org.apache.accumulo.core.client.impl.ConnectorImpl$1.execute(ConnectorImpl.java:75)
at
org.apache.accumulo.core.client.impl.ServerClient.executeRaw(ServerClient.java:108)
at
org.apache.accumulo.core.client.impl.ServerClient.execute(ServerClient.java:71)
... 4 more
Any help would be greatly appreciated!
Thanks,
Duane