av9ash/GitBugs huggingface dataset:
Bug: Bump snakeyaml from 1.26 to 2.0
Status: Resolved
Priority: Normal
Resolution: Duplicate
Created: 16/Mar/23 19:09
Resolved: 16/Mar/23 19:38

snakeyaml 1.26 has CVEs. Bump version for snakeyaml from 1.26 to 2.0

To see the CVEs, goto [https://mvnrepository.com/artifact/org.apache.cassandra/cassandra-all/4.1.0] and seach for [org.yaml|https://mvnrepository.com/artifact/org.yaml] » [snakeyaml|https://mvnrepository.com/artifact/org.yaml/snakeyaml] under compile dependencies.Vulnerabilites are listed thusly:

 

Direct vulnerabilities:
[CVE-2022-41854|https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-41854]
[CVE-2022-38752|https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-38752]
[CVE-2022-38751|https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-38751]
[View 4 more ...|https://mvnrepository.com/artifact/org.yaml/snakeyaml/1.26#]
Vulnerabilities from dependencies:
[CVE-2022-22971|https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22971]
[CVE-2022-22970|https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22970]
[CVE-2022-22968|https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-22968]

.............
Bug: Enable streaming SAI components as part of repair
Status: Resolved
Priority: Normal
Resolution: Fixed
Created: 20/Mar/23 17:40
Resolved: 29/Jun/23 20:49

SAI registers it's components with the SSTable descriptor expecting them to form part of the SSTable lifecycle, including streaming. This is not the case.

The current SSTable format in Cassandra uses a fixed set of components (Components.STREAMING_COMPONENTS) when streaming SSTables. This needs to change to use the set of components that are registered with a specific SSTable by calls to SSTable.registerComponents.
Bug: SelectStatement.asCQL fails with IndexOutOfBoundsException
Status: In Progress
Priority: Normal
Created: 28/Mar/23 21:06

See https://app.circleci.com/pipelines/github/dcapwell/cassandra/1934/workflows/2525f75d-a819-43db-8e89-c9d58cc8f4d7/jobs/18594

{code}
java.lang.IndexOutOfBoundsException: Index: 0
	at java.util.Collections$EmptyList.get(Collections.java:4456)
	at org.apache.cassandra.cql3.Constants$Marker.bindAndGet(Constants.java:470)
	at org.apache.cassandra.cql3.selection.ElementsSelector$1.newInstance(ElementsSelector.java:129)
	at org.apache.cassandra.cql3.selection.SelectorFactories.newInstances(SelectorFactories.java:206)
	at org.apache.cassandra.cql3.selection.Selection$SelectionWithProcessing$1.<init>(Selection.java:564)
	at org.apache.cassandra.cql3.selection.Selection$SelectionWithProcessing.newSelectors(Selection.java:562)
	at org.apache.cassandra.cql3.statements.SelectStatement.queriedColumns(SelectStatement.java:195)
	at org.apache.cassandra.cql3.statements.SelectStatement.asCQL(SelectStatement.java:1634)

{code}
Bug: Fix issue with system.local.broadcast_port when downgrading to v3
Status: Triage Needed
Priority: Normal
Created: 23/Mar/23 14:13

{{system.local}} table 4.0 format adds the {{broadcast_port}} column.  There is no way to make 3.x ignore it when we try to downgrade.

There are some tables that are defined in code. (e.g. system.local)

When v3 sstable schema for these tables detects:
 * a column in the sstable schema that is not in the data schema it creates a deleted column in the data schema.
 * a column in the data schema that is not in the sstable schema it throws an exception.

 

There are two basic approaches to solve this:
 * rewrite the data so that the additional column is removed.  This is an expensive process.
 * rework the code so that columns in the data but not in the table are ignored for this class of tables (statically defined in code).
Bug: sstabledump for secondary index sstable error
Status: Open
Priority: Normal
Created: 10/Feb/23 03:29

As [CASSANDRA-17698|https://issues.apache.org/jira/browse/CASSANDRA-17698] described , for older branches we open a new ticket and  fixed  just JSON-printing the failing clustering key as raw bytes.
for Cassandra version that can change the sstable version (may be 5.0) , the patch for CASSANDRA-17698 will be applied.
Bug: CEP-25: Trie-indexed SSTable format
Status: Resolved
Priority: Normal
Resolution: Fixed
Created: 31/Mar/23 14:30
Resolved: 29/May/23 14:05

Implementation of Big Trie-Indexed (BTI) SSTable format, per [CEP-25|https://cwiki.apache.org/confluence/display/CASSANDRA/CEP-25%3A+Trie-indexed+SSTable+format].
Bug: Document cqlsh single quote escaping behavior on complex vs simple types
Status: Resolved
Priority: Normal
Resolution: Duplicate
Created: 17/Jan/23 20:06
Resolved: 17/May/23 18:51

cqlsh escapes single quotes on complex types but not on text types:

Table: {{CREATE TABLE test (name text, foo map<text,text>, PRIMARY KEY(name));}}

Insert:  {code}INSERT INTO test (name, foo) VALUES ( 'jos''emy',{'foo':'josemy''s houñse'});{code}

Query: {{SELECT * FROM  test;}}
{code}
 name    | foo
-----------+-----------------------------
 jos'emy | {'foo': 'josemy''s houñse'}
{code}

This behavior is confusing because simple text fields containing single quotes are not escaped on cqlsh, while complex types (such as collections or UDTs) are escaped. A couple of tickets were created to clarify this behavior: CASSANDRA-10263 and CASSANDRA-15458.

We should probably document this behavior on cqlsh documentation to avoid confusion.
Bug: Store PreAccept, Accept, Commit, and Apply in a durable log before processing by CommandStores
Status: Resolved
Priority: Normal
Resolution: Fixed
Created: 20/Mar/23 11:33
Resolved: 15/May/23 13:16

Write PreAccept, Accept, Commit, and Apply messages durably to a journal.
CommandStore will then processes the messages in write order.
 
This is a prerequisite JIRA for several incoming improvements, such as reducing the data we store in system tables, making command stores and progress log persistent, simplifying caching.
The journal supports invalidating individual entries by id and sets of owners, and looking up records by id, both needed for near-future Accord work.
 
Several complete/near-complete parts of the generic journal implementation have been temporarily taken out until we need them (soon, once bootstrap/state reclamation are implemented).
These include invalidation support (in memory and on-disk implementations), and segment compaction (not needed without invalidations).
Bug: CEP-15: (Accord) Introduce ExclusiveSyncPoint transactions
Status: Resolved
Priority: Normal
Resolution: Fixed
Created: 18/Jan/23 12:19
Resolved: 12/May/23 09:03

Introduce a mechanism for invalidating older {{TxnId}}, so that a newly bootstrapped node may have a complete log as of a point in time {{TxnId}}.
Bug: CEP-15: (Accord/C*) Refactor Timestamp/TxnId
Status: Resolved
Priority: Normal
Resolution: Fixed
Created: 18/Jan/23 12:13
Resolved: 12/May/23 08:39

Reduce the amount of storage required for Timestamp and TxnId by compressing epoch to 48 bits, and real/logical to a single 64-bit HLC, while also supporting flag carrier bits for communicating protocol state information.
Bug: CEP-15: (Accord/C*) Introduce RangeDeps
Status: Resolved
Priority: Normal
Resolution: Fixed
Created: 18/Jan/23 12:16
Resolved: 12/May/23 08:39

In order to support range transactions, we must be able to separately manage dependencies that cover ranges rather than specific keys. This patch splits {{Deps}} into {{KeyDeps}} and {{RangeDeps}}, while introducing a new {{SearchableRangeList}} structure for efficiently looking up range intersections.
Bug: Run Sonar analyzer over the Cassandra project
Status: Patch Available
Priority: Normal
Created: 29/Mar/23 17:19

As we already have Cassandra's project configured for the sonarcloud.io INFRA-24196, I wonder if we will be able to release branches, trunk, and pull requests to get analyzed by the SonarAnalyzer tool.

Sonar is a code quality and security tool that is free to open-source projects and recommended by the INFRA team:
https://cwiki.apache.org/confluence/display/INFRA/SonarCloud+for+ASF+projects

It can have the following benefits without introducing any drawbacks (except for a few lines of source code)
- visualise the LFH problems to work on;
- see the trends in the source code;
- add an extra layer of static code analysis;

Changes below I have tested it locally with my SonarQube deployed on http://localhost:9000 and run the `act` for the GA part of the PR.  It seems to work and parse classes correctly, but there are a few steps that need to be done by Cassandra's Committer or PMC (I do not have sufficient privileges):
- make sure that the {{SONARCLOUD_TOKEN}} is available for GA and enabled for the project;
- quality profile is configured for the project (the "Sonar way" seems to be heavy to run);
Bug: Create 2023 Google Season of Documentation proposal and related blog post
Status: Resolved
Priority: Normal
Resolution: Done
Created: 24/Feb/23 19:42
Resolved: 10/Apr/23 18:13

Create a Google Season of Documentation proposal and related blog post.
 * Apply for Open Collective account.
 * Apply for GSoD grant. Requires writing blog post for URL for application.
 * FYI - ticket will be close once GSoD application is submitted.
 ** If grant is successful, modify blog post to advertise for tech writer applicants.
 ** Select tech writers.
Bug: Test failure: org.apache.cassandra.dht.SplitterTest.randomSplitTestVNodesMurmur3Partitioner
Status: Open
Priority: Normal
Created: 24/Mar/23 15:08

Probably fairly rare:

{noformat}
junit.framework.AssertionFailedError: Could not split 174 tokens with rf=2 into 5 parts (localRanges=[WeightedRange{weight=1.0, range=(-9189224686959415082,-9138072478779219369]}, WeightedRange{weight=1.0, range=(-9119899575136046252,-

[huge amount of ranges removed]

(9187328586100957628,9192925485386116970]}, WeightedRange{weight=1.0, range=(9202885784017058194,9218589957041545366]}], boundaries=[-5733128546251210859, -2182877486944060087, 1864834456333815149, 5294455324274550397, 9223372036854775807])
	at org.apache.cassandra.dht.SplitterTest.randomSplitTestVNodes(SplitterTest.java:153)
	at org.apache.cassandra.dht.SplitterTest.randomSplitTestVNodesMurmur3Partitioner(SplitterTest.java:67)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
{noformat}

https://app.circleci.com/pipelines/github/driftx/cassandra/928/workflows/f4e93a72-d4aa-47a2-996f-aa3fb018d848/jobs/16199
Bug: CEP-15 (Accord) AsyncOperation can not fail as it has already reached FINISHED
Status: Resolved
Priority: Normal
Resolution: Fixed
Created: 28/Mar/23 20:55
Resolved: 05/Apr/23 16:36

{code}
java.lang.IllegalArgumentException: Unexpected state FINISHED
	at accord.utils.Invariants.illegalArgument(Invariants.java:54)
	at accord.utils.Invariants.checkArgument(Invariants.java:202)
	at org.apache.cassandra.service.accord.async.AsyncOperation.fail(AsyncOperation.java:182)
	at org.apache.cassandra.service.accord.async.AsyncOperation.run(AsyncOperation.java:273)
{code}

And

{code}
java.lang.IllegalArgumentException: Unexpected state FINISHED
	at accord.utils.Invariants.illegalArgument(Invariants.java:54)
	at accord.utils.Invariants.checkArgument(Invariants.java:202)
	at org.apache.cassandra.service.accord.async.AsyncOperation.fail(AsyncOperation.java:182)
	at org.apache.cassandra.service.accord.async.AsyncOperation.run(AsyncOperation.java:273)
	at org.apache.cassandra.service.accord.async.AsyncOperation.callback(AsyncOperation.java:157)
	at accord.utils.async.AsyncCallbacks.lambda$null$0(AsyncCallbacks.java:31)
{code}
Bug: Backport CASSANDRA-17205 (remove strong self-ref in tidier) to all supported lines
Status: Resolved
Priority: Normal
Resolution: Fixed
Created: 10/Feb/23 16:35
Resolved: 05/Apr/23 00:22

CASSANDRA-17205 should probably have been backported to all supported branches. It's potentially masking some issues seen w/refs in other locations so we should pull it back to all supported lines.
Bug: Fix build script for shaded jvm-dtest JAR
Status: Review In Progress
Priority: Normal
Created: 28/Mar/23 23:08

On trunk as of 6a5f84d0f44f5562776a12a678c7d68168d2c7e7, ./build-shaded-dtest-jar.sh fails with errors related to org.apache.tools.ant.taskdefs.optional.junit package visibility:

{code}
...
    [javac]   symbol:   class JUnitTest
    [javac]   location: class CassandraXMLJUnitResultFormatter
    [javac] /cassandra/test/unit/org/apache/cassandra/JStackJUnitTask.java:27: error: package org.apache.tools.ant.taskdefs.optional.junit does not exist
    [javac] import org.apache.tools.ant.taskdefs.optional.junit.JUnitTask;
    [javac]                                                    ^
    [javac] /cassandra/test/unit/org/apache/cassandra/JStackJUnitTask.java:30: error: cannot find symbol
    [javac] public class JStackJUnitTask extends JUnitTask
    [javac]                                      ^
    [javac]   symbol: class JUnitTask
    [javac] Note: Processing compiler hints annotations
    [javac] Note: Writing compiler command file at META-INF/hotspot_compiler
    [javac] Note: Done processing compiler hints annotations
    [javac] 22 errors

BUILD FAILED
/cassandra/build.xml:999: The following error occurred while executing this line:
/cassandra/build.xml:1012: Compile failed; see the compiler error output for details.
{code}

Reproduced with Java 11, Maven 3.5.4, Ant 1.10.5.

This is caused by the classpath exclusion of {noformat}${test.lib}/jars/**/ant-*.jar{noformat}, which includes ant-junit, which is depended on by org.apache.cassandra.CassandraXMLJUnitResultFormatter.
See: https://github.com/apache/cassandra/blob/6a5f84d0f44f5562776a12a678c7d68168d2c7e7/build.xml#L331

To fix, update to include that library specifically:

{code}
         <fileset dir="${test.lib}/jars">
             <include name="**/*.jar" />
             <exclude name="**/ant-*.jar"/>
         </fileset>
+        <fileset dir="${test.lib}/jars">
+            <include name="**/ant-junit-*.jar" />
+        </fileset>
{code}
Bug: BulkLoader tool initializes schema unnecessarily via streaming - 4.0
Status: Resolved
Priority: Normal
Resolution: Fixed
Created: 28/Mar/23 06:13
Resolved: 31/Mar/23 17:03

Similar to CASSANDRA-17740, {{BulkLoader}} initializes the schema/system keyspace, which caused the issue in bulk loader tool. See more details in CASSANDRA-17740. Please help fix the issue in 4.0 branch as well. Thanks.
Bug: flaky test org.apache.cassandra.net.ConnectionTest.testMessageDeliveryOnReconnect-compression.jdk1.8 on trunk
Status: Resolved
Priority: Normal
Resolution: Duplicate
Created: 30/Mar/23 19:51
Resolved: 30/Mar/23 21:18

Failed 3 times in the last 5 runs. Flakiness: 100%, Stability: 40%

expected:<1> but was:<0>

Stack:
{code}
junit.framework.AssertionFailedError: expected:<1> but was:<0>
	at org.apache.cassandra.net.ConnectionTest.lambda$testMessageDeliveryOnReconnect$45(ConnectionTest.java:772)
	at org.apache.cassandra.net.ConnectionTest.doTestManual(ConnectionTest.java:265)
	at org.apache.cassandra.net.ConnectionTest.testManual(ConnectionTest.java:238)
	at org.apache.cassandra.net.ConnectionTest.testMessageDeliveryOnReconnect(ConnectionTest.java:751)
{code}
Bug: CEP-15 (Accord) accord.impl.SimpleProgressLog.Instance.State.BlockingState#run does not handle exceptions, and doesn't report to the Agent
Status: Open
Priority: Normal
Created: 28/Mar/23 21:05

accord.impl.SimpleProgressLog.Instance.State.BlockingState#run doesn’t notify agent of exceptions that are not handled, this is a problem for BurnTest as it doesn’t see the unexpected exceptions.
Bug: CEP-15 (Accord) ReadCoordinator fails with We were asked to read more, but found no shards in need of reading more
Status: Open
Priority: Normal
Created: 28/Mar/23 21:01

{code}
java.lang.IllegalStateException: We were asked to read more, but found no shards in need of reading more
	at accord.utils.Invariants.illegalState(Invariants.java:44)
	at accord.utils.Invariants.checkState(Invariants.java:97)
	at accord.coordinate.tracking.ReadTracker.trySendMore(ReadTracker.java:257)
	at accord.coordinate.ReadCoordinator.trySendMore(ReadCoordinator.java:206)
	at accord.coordinate.tracking.AbstractTracker$ShardOutcomes.toRequestStatus(AbstractTracker.java:74)
	at accord.coordinate.tracking.AbstractTracker$ShardOutcomes.access$100(AbstractTracker.java:39)
	at accord.coordinate.tracking.AbstractTracker.recordResponse(AbstractTracker.java:137)
	at accord.coordinate.tracking.AbstractTracker.recordResponse(AbstractTracker.java:123)
	at accord.coordinate.tracking.ReadTracker.recordResponse(ReadTracker.java:235)
	at accord.coordinate.tracking.ReadTracker.recordQuorumReadSuccess(ReadTracker.java:221)
	at accord.coordinate.ReadCoordinator.onSuccess(ReadCoordinator.java:115)
	at accord.coordinate.ReadCoordinator.onSuccess(ReadCoordinator.java:36)
	at accord.messages.CallbackHolder.lambda$success$0(CallbackHolder.java:39)
	at accord.messages.CallbackHolder.lambda$safeCall$3(CallbackHolder.java:62)
	at org.apache.cassandra.service.accord.async.AsyncOperation$ForConsumer.apply(AsyncOperation.java:343)
	at org.apache.cassandra.service.accord.async.AsyncOperation$ForConsumer.apply(AsyncOperation.java:330)
	at org.apache.cassandra.service.accord.async.AsyncOperation.runInternal(AsyncOperation.java:226)
	at org.apache.cassandra.service.accord.async.AsyncOperation.run(AsyncOperation.java:268)
{code}
Bug: CEP-15 (Accord) SPL ISE in accord.impl.SimpleProgressLog$Instance$State$Monitoring.setProgress
Status: Open
Priority: Normal
Created: 28/Mar/23 21:00

{code}
java.lang.IllegalStateException
	at accord.utils.Invariants.illegalState(Invariants.java:44)
	at accord.utils.Invariants.illegalState(Invariants.java:49)
	at accord.utils.Invariants.checkState(Invariants.java:91)
	at accord.impl.SimpleProgressLog$Instance$State$Monitoring.setProgress(SimpleProgressLog.java:108)
	at accord.impl.SimpleProgressLog$Instance$State$BlockingState.recordBlocking(SimpleProgressLog.java:471)
	at accord.impl.SimpleProgressLog$Instance$State.recordBlocking(SimpleProgressLog.java:603)
	at accord.impl.SimpleProgressLog$Instance.durable(SimpleProgressLog.java:791)
	at accord.messages.InformDurable.apply(InformDurable.java:91)
	at accord.messages.InformDurable.apply(InformDurable.java:36)
	at org.apache.cassandra.service.accord.async.AsyncOperation$ForFunction.apply(AsyncOperation.java:321)
	at org.apache.cassandra.service.accord.async.AsyncOperation$ForFunction.apply(AsyncOperation.java:308)
	at org.apache.cassandra.service.accord.async.AsyncOperation.runInternal(AsyncOperation.java:226)
	at org.apache.cassandra.service.accord.async.AsyncOperation.run(AsyncOperation.java:268)
	at org.apache.cassandra.service.accord.async.AsyncOperation.callback(AsyncOperation.java:157)
	at accord.utils.async.AsyncCallbacks.lambda$null$0(AsyncCallbacks.java:31)
{code}
Bug: CEP-15 (Accord) accord.coordinate.CheckOn.onDone throws ISE
Status: Open
Priority: Normal
Created: 28/Mar/23 20:59

{code}
java.lang.IllegalStateException
	at accord.utils.Invariants.illegalState(Invariants.java:44)
	at accord.utils.Invariants.illegalState(Invariants.java:49)
	at accord.utils.Invariants.checkState(Invariants.java:91)
	at accord.coordinate.CheckOn.onDone(CheckOn.java:119)
	at accord.coordinate.ReadCoordinator.handle(ReadCoordinator.java:178)
	at accord.coordinate.ReadCoordinator.onSuccess(ReadCoordinator.java:119)
	at accord.coordinate.ReadCoordinator.onSuccess(ReadCoordinator.java:36)
	at accord.messages.CallbackHolder.lambda$success$0(CallbackHolder.java:39)
	at accord.messages.CallbackHolder.lambda$safeCall$3(CallbackHolder.java:62)
	at org.apache.cassandra.service.accord.async.AsyncOperation$ForConsumer.apply(AsyncOperation.java:343)
	at org.apache.cassandra.service.accord.async.AsyncOperation$ForConsumer.apply(AsyncOperation.java:330)
	at org.apache.cassandra.service.accord.async.AsyncOperation.runInternal(AsyncOperation.java:226)
	at org.apache.cassandra.service.accord.async.AsyncOperation.run(AsyncOperation.java:268)
{code}
Bug: CEP-15 (Accord) ConcurrentModificationException in accord.coordinate.tracking.ReadTracker.trySendMore
Status: Open
Priority: Normal
Created: 28/Mar/23 20:58


{code}
java.util.ConcurrentModificationException
	at java.base/java.util.ArrayList.sort(ArrayList.java:1752)
	at accord.coordinate.tracking.ReadTracker.trySendMore(ReadTracker.java:262)
	at accord.coordinate.ReadCoordinator.trySendMore(ReadCoordinator.java:206)
	at accord.coordinate.tracking.AbstractTracker$ShardOutcomes.toRequestStatus(AbstractTracker.java:74)
	at accord.coordinate.tracking.AbstractTracker$ShardOutcomes.access$100(AbstractTracker.java:39)
	at accord.coordinate.tracking.AbstractTracker.recordResponse(AbstractTracker.java:137)
	at accord.coordinate.tracking.AbstractTracker.recordResponse(AbstractTracker.java:123)
	at accord.coordinate.tracking.ReadTracker.recordResponse(ReadTracker.java:235)
	at accord.coordinate.tracking.ReadTracker.recordQuorumReadSuccess(ReadTracker.java:221)
	at accord.coordinate.ReadCoordinator.onSuccess(ReadCoordinator.java:115)
	at accord.coordinate.ReadCoordinator.onSuccess(ReadCoordinator.java:36)
	at accord.messages.CallbackHolder.lambda$success$0(CallbackHolder.java:39)
	at accord.messages.CallbackHolder.lambda$safeCall$3(CallbackHolder.java:62)
	at org.apache.cassandra.service.accord.async.AsyncOperation$ForConsumer.apply(AsyncOperation.java:343)
	at org.apache.cassandra.service.accord.async.AsyncOperation$ForConsumer.apply(AsyncOperation.java:330)
	at org.apache.cassandra.service.accord.async.AsyncOperation.runInternal(AsyncOperation.java:226)
	at org.apache.cassandra.service.accord.async.AsyncOperation.run(AsyncOperation.java:268)
{code}
Bug: CEP-15 (Accord) Inconsistent execution timestamp detected for txnId
Status: Open
Priority: Normal
Created: 28/Mar/23 20:57

{code}
java.lang.AssertionError: Inconsistent execution timestamp detected for txnId [1,1680024935809000,0,1684150492]: [0,0,0,0] != [1,1680024935809000,0,1684150492]
	at org.apache.cassandra.service.accord.api.AccordAgent.onInconsistentTimestamp(AccordAgent.java:44)
	at accord.local.Commands.commit(Commands.java:240)
	at accord.messages.Commit.apply(Commit.java:155)
	at accord.messages.Commit.apply(Commit.java:42)
	at org.apache.cassandra.service.accord.async.AsyncOperation$ForFunction.apply(AsyncOperation.java:321)
	at org.apache.cassandra.service.accord.async.AsyncOperation$ForFunction.apply(AsyncOperation.java:308)
	at org.apache.cassandra.service.accord.async.AsyncOperation.runInternal(AsyncOperation.java:226)
	at org.apache.cassandra.service.accord.async.AsyncOperation.run(AsyncOperation.java:268)
{code}
Bug: CEP-15 (Accord) NPE in accord.topology.TopologyManager.localForEpoch
Status: Open
Priority: Normal
Created: 28/Mar/23 20:54

{code}
java.lang.NullPointerException
	at accord.topology.TopologyManager.localForEpoch(TopologyManager.java:402)
	at accord.local.Node.trySelectProgressKey(Node.java:431)
	at accord.messages.TxnRequest.progressKey(TxnRequest.java:151)
	at accord.messages.TxnRequest.process(TxnRequest.java:143)
	at org.apache.cassandra.service.accord.AccordVerbHandler.doVerb(AccordVerbHandler.java:46)
{code}


accord.topology.TopologyManager.Epochs#get is able to return null, yet the callers do not handle

{code}
private EpochState get(long epoch)
{
    if (epoch > currentEpoch || epoch <= currentEpoch - epochs.length)
        return null;

    return epochs[(int) (currentEpoch - epoch)];
}
{code}
Bug: Create a guardrail to prevent writing of timestamps in the distant future
Status: Resolved
Priority: Normal
Resolution: Duplicate
Created: 28/Mar/23 19:45
Resolved: 28/Mar/23 19:51

We ran into an issue where data inserted was USING TIMESTAMP that was using nanoseconds which cassandra was converting to something like this:

```

{{"tstamp" : "+55089-04-29T09:06:44.854775807Z"}}

{{```}}

Which means we were not able to delete or update the row. We had to write a delete with a timestamp 1 second ahead of the above timestamp and then run a garbagecollect to remove the data.