David Capwell created CASSANDRA-18675:
-----------------------------------------
Summary: (Accord): C* stores keyspace in Range which will cause
ranges to be removed from Accord when DROP KEYSPACE is performed
Key: CASSANDRA-18675
URL: https://issues.apache.org/jira/browse/CASSANDRA-18675
Project: Cassandra
Issue Type: Bug
Components: Accord
Reporter: David Capwell
Assignee: David Capwell
When translating the C* model to Accord we store the keyspace in the Range,
this has the side effect that DROP KEYSPACE will cause Accord to see ranges
removed between epoch versions. When this is enabled in BurnTest we see that
there are cases where we stop making progress and can loop forever (until we
OOM).
Example
{code}
Failed on seed -1330125844737109546
accord.burn.SimulationException: Failed on seed -1330125844737109546
java.lang.OutOfMemoryError: GC overhead limit exceeded
at java.util.HashMap.newNode(HashMap.java:1774)
at java.util.HashMap.putVal(HashMap.java:632)
at java.util.HashMap.put(HashMap.java:613)
at
accord.impl.InMemoryCommandStore$InMemorySafeStore.addCommandInternal(InMemoryCommandStore.java:582)
at
accord.impl.InMemoryCommandStore$InMemorySafeStore.addCommandInternal(InMemoryCommandStore.java:557)
at
accord.impl.AbstractSafeCommandStore$$Lambda$516/1241529534.accept(Unknown
Source)
at
accord.impl.AbstractSafeCommandStore.getIfLoaded(AbstractSafeCommandStore.java:84)
at
accord.impl.AbstractSafeCommandStore.getInternalIfLoadedAndInitialised(AbstractSafeCommandStore.java:91)
at
accord.local.SafeCommandStore.ifLoadedAndInitialised(SafeCommandStore.java:194)
at accord.local.Commands.lambda$updateWaitingOn$3(Commands.java:687)
at accord.local.Commands$$Lambda$514/809300666.accept(Unknown Source)
at accord.utils.SimpleBitSet.reverseForEach(SimpleBitSet.java:358)
at
accord.local.Command$WaitingOn$Update.forEachWaitingOnCommit(Command.java:1280)
at accord.local.Commands.updateWaitingOn(Commands.java:685)
at accord.local.Commands.initialiseWaitingOn(Commands.java:675)
at accord.local.Commands.apply(Commands.java:481)
at accord.messages.Apply.apply(Apply.java:121)
at accord.messages.Apply.apply(Apply.java:34)
{code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]