I'm aware of some efforts to upgrade D4M / Graphulo-related libraries to Accumulo 2.x, but I think they are a bit behind the scenes right now. Let me know if you are interested in a point of contact for that work.
The last tested version of D4M that I'm aware of targeted Accumulo 1.8. It's been a while! On Mon, Apr 22, 2024, 11:45 AM Geoffry Roberts <geoffry.robe...@gmail.com> wrote: > All, > > I got it fixed. I removed the d4m business and all went well. fyi: As > best I can tell, the d4m dependency was written for an older version of > Accumulo, apparently 1.4. I removed it and am now rolling my own. > > Thanks for your help. > > On Mon, 22 Apr 2024 at 08:53, <dlmar...@comcast.net> wrote: > >> >> >> My guess is that the error is happening on the server side and being >> raised at >> https://github.com/openjdk/jdk/blob/master/src/java.base/share/classes/java/util/Base64.java#L713. >> If there is a stack trace in the server log, then that would help pinpoint >> the issue. I’m guessing here, but it could be the following call: >> >> (client) TableOperationsImpl.doFateOperation -> >> (client) TableOperationsImpl.beginFateOperation -> >> >> (manager) FateServiceHandler.beginFateOperation -> >> (manager) FateServiceHandler.authenticate -> >> >> (manager) SecurityOperation.authenticateUser -> >> (manager) SecurityOperations.authenticate -> >> (manager) Credentials.fromThrift -> … >> >> >> >> In your code, how is client created? Is it cached, shared, etc? Does >> the framework that you are using create a new instance of your class and >> maybe the AccumuloClient is not fully initialized? >> >> >> >> *From:* Christopher <ctubb...@apache.org> >> *Sent:* Sunday, April 21, 2024 4:56 PM >> *To:* accumulo-user <user@accumulo.apache.org> >> *Subject:* Re: Issue with TableOperations >> >> >> >> I don't see this error message anywhere in Accumulo code. It looks like >> it might be coming from d4m? >> >> >> >> On Sat, Apr 20, 2024, 17:07 Geoffry Roberts <geoffry.robe...@gmail.com> >> wrote: >> >> v2.1.2 >> >> >> >> On Sat, 20 Apr 2024 at 13:11, Dave Marion <dlmar...@comcast.net> wrote: >> >> >> >> >> >> What version of Accumulo are you using? >> >> >> >> >> >> >> >> On Apr 20, 2024 12:16 PM, Geoffry Roberts <geoffry.robe...@gmail.com> >> wrote: >> >> I am setting up a microservice that accesses accumulo. It's a >> specialized thing of limited scope. I do need to get it to create tables >> (Code is below.). >> >> >> >> - Java 17 >> - SpringBoot running Jetty >> - Postman >> >> >> >> In the below code bit, the tableName is a string "patient״. When I run >> it, I get an error message: >> >> >> >> org.apache.accumulo.core.client.AccumuloException: Input byte[] should at >> least have 2 bytes for base64 bytes >> >> at >> org.apache.accumulo.core.clientImpl.TableOperationsImpl.doFateOperation(TableOperationsImpl.java:413) >> >> at >> org.apache.accumulo.core.clientImpl.TableOperationsImpl.doFateOperation(TableOperationsImpl.java:365) >> >> at >> org.apache.accumulo.core.clientImpl.TableOperationsImpl.doTableFateOperation(TableOperationsImpl.java:1803) >> >> at >> org.apache.accumulo.core.clientImpl.TableOperationsImpl.create(TableOperationsImpl.java:254) >> >> at >> org.apache.accumulo.core.clientImpl.TableOperationsImpl.create(TableOperationsImpl.java:226) >> >> at >> d4m.acc.microservice.D4MACCController.createTable(D4MACCController.java:58) >> >> >> >> Q: Why it seems all is quite correct? The log message is correct. The >> return value is correct. >> >> >> @PostMapping("/create") >> >> public String createTable(@RequestBody String tableName) { >> >> TableOperations ops = client.tableOperations(); >> >> try { >> >> *LOG*.info("create=" + tableName); >> >> ops.create(tableName); >> >> } catch (AccumuloException | AccumuloSecurityException | >> TableExistsException e) { >> >> e.printStackTrace(); >> >> } >> >> return tableName; >> >> }-- >> >> >> >> Thanks >> >> >> >> My software always runs perfectly in the end. If it is not perfect, it is >> not yet the end. >> >> >> >> Geoffry Roberts >> >> >> >> >> >> >> -- >> >> My software always runs perfectly in the end. If it is not perfect, it is >> not yet the end. >> >> >> >> Geoffry Roberts >> >> > > -- > My software always runs perfectly in the end. If it is not perfect, it is > not yet the end. > > Geoffry Roberts >