keith-turner commented on PR #3897:
URL: https://github.com/apache/accumulo/pull/3897#issuecomment-1782064768
Saw the following exception in the tserver where the metadata table could
not close because its write to the root tablet failed. Seems the code would
throw an exception when trying to write to the root tablet when it did not have
a location. This change fixes the following bug. Saw this while running
SslIT.adminStop() test.
```
2023-10-26T18:52:14,985 [tserver.UnloadTabletHandler] ERROR: Failed to close
tablet !0;~<... Aborting migration
java.lang.RuntimeException: Exception occurred during minor compaction on
!0;~<
at
org.apache.accumulo.tserver.tablet.Tablet.minorCompact(Tablet.java:386)
~[classes/:?]
at
org.apache.accumulo.tserver.tablet.MinorCompactionTask.run(MinorCompactionTask.java:114)
~[classes/:?]
at
org.apache.accumulo.tserver.tablet.Tablet.initiateClose(Tablet.java:795)
~[classes/:?]
at org.apache.accumulo.tserver.tablet.Tablet.close(Tablet.java:746)
~[classes/:?]
at
org.apache.accumulo.tserver.UnloadTabletHandler.run(UnloadTabletHandler.java:93)
[classes/:?]
at
org.apache.accumulo.core.trace.TraceWrappedRunnable.run(TraceWrappedRunnable.java:52)
[classes/:?]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
[?:?]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
[?:?]
at
org.apache.accumulo.core.trace.TraceWrappedRunnable.run(TraceWrappedRunnable.java:52)
[classes/:?]
at java.lang.Thread.run(Thread.java:829) [?:?]
Caused by: java.lang.RuntimeException:
org.apache.accumulo.core.client.AccumuloException:
java.util.NoSuchElementException: No value present
at
org.apache.accumulo.server.metadata.ConditionalTabletsMutatorImpl.partitionResults(ConditionalTabletsMutatorImpl.java:142)
~[classes/:?]
at
org.apache.accumulo.server.metadata.ConditionalTabletsMutatorImpl.writeMutations(ConditionalTabletsMutatorImpl.java:152)
~[classes/:?]
at
org.apache.accumulo.server.metadata.ConditionalTabletsMutatorImpl.process(ConditionalTabletsMutatorImpl.java:206)
~[classes/:?]
at
org.apache.accumulo.tserver.tablet.Tablet.updateTabletDataFile(Tablet.java:1357)
~[classes/:?]
at
org.apache.accumulo.tserver.tablet.Tablet.bringMinorCompactionOnline(Tablet.java:1490)
~[classes/:?]
at
org.apache.accumulo.tserver.tablet.Tablet.minorCompact(Tablet.java:373)
~[classes/:?]
... 9 more
Caused by: org.apache.accumulo.core.client.AccumuloException:
java.util.NoSuchElementException: No value present
at
org.apache.accumulo.core.client.ConditionalWriter$Result.getStatus(ConditionalWriter.java:71)
~[classes/:?]
at
org.apache.accumulo.server.metadata.ConditionalTabletsMutatorImpl.partitionResults(ConditionalTabletsMutatorImpl.java:136)
~[classes/:?]
at
org.apache.accumulo.server.metadata.ConditionalTabletsMutatorImpl.writeMutations(ConditionalTabletsMutatorImpl.java:152)
~[classes/:?]
at
org.apache.accumulo.server.metadata.ConditionalTabletsMutatorImpl.process(ConditionalTabletsMutatorImpl.java:206)
~[classes/:?]
at
org.apache.accumulo.tserver.tablet.Tablet.updateTabletDataFile(Tablet.java:1357)
~[classes/:?]
at
org.apache.accumulo.tserver.tablet.Tablet.bringMinorCompactionOnline(Tablet.java:1490)
~[classes/:?]
at
org.apache.accumulo.tserver.tablet.Tablet.minorCompact(Tablet.java:373)
~[classes/:?]
... 9 more
Caused by: java.util.NoSuchElementException: No value present
at java.util.Optional.orElseThrow(Optional.java:382) ~[?:?]
at
org.apache.accumulo.core.clientImpl.RootClientTabletCache.binMutations(RootClientTabletCache.java:62)
~[classes/:?]
at
org.apache.accumulo.core.clientImpl.SyncingClientTabletCache.binMutations(SyncingClientTabletCache.java:82)
~[classes/:?]
at
org.apache.accumulo.core.clientImpl.ConditionalWriterImpl.queue(ConditionalWriterImpl.java:288)
~[classes/:?]
at
org.apache.accumulo.core.clientImpl.ConditionalWriterImpl.write(ConditionalWriterImpl.java:429)
~[classes/:?]
at
org.apache.accumulo.server.metadata.ConditionalTabletsMutatorImpl.writeMutations(ConditionalTabletsMutatorImpl.java:148)
~[classes/:?]
at
org.apache.accumulo.server.metadata.ConditionalTabletsMutatorImpl.process(ConditionalTabletsMutatorImpl.java:206)
~[classes/:?]
at
org.apache.accumulo.tserver.tablet.Tablet.updateTabletDataFile(Tablet.java:1357)
~[classes/:?]
at
org.apache.accumulo.tserver.tablet.Tablet.bringMinorCompactionOnline(Tablet.java:1490)
~[classes/:?]
at
org.apache.accumulo.tserver.tablet.Tablet.minorCompact(Tablet.java:373)
~[classes/:?]
... 9 more
```
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]