scylladb / scylladb/cpp-rs-driver

DcAwarePolicyTest.Integration_Cassandra_AllowRemoteDcsForLocalCl is flakky

Open
#374 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

area/testing
Dominant language
C++
Stars
26
Forks
19
Avg merge
1d 21h
Merged PRs (30d)
7

Description

Sometimes it fails:

[ RUN      ] DcAwarePolicyTest.Integration_Cassandra_AllowRemoteDcsForLocalCl
1758628238072 [DEBUG] (scylla_cpp_driver::logging:178) message: Log level is set to TRACE
ccm> ccm list
ccm> ccm list
Testing with `allow_remote_dcs_for_local_cl`=`false`
Running nonlocal statement with local DC available
Running local statement with local DC available
ccm> ccm node1 stop --not-gently
ccm> ccm node2 stop --not-gently
Running nonlocal statement with local DC unavailable
/home/runner/work/cpp-rs-driver/cpp-rs-driver/tests/src/integration/objects/future.hpp:152: Failure
      Expected: CASS_OK
To be equal to: wait_code
      Which is: CASS_ERROR_SERVER_READ_TIMEOUT [Read timeout]
Read timeout: Database returned an error: Not enough nodes responded to the read request in time to satisfy required consistency level (consistency: Two, received: 1, required: 2, data_present: true), Error message: Operation timed out - received only 1 responses.
unknown file: Failure
C++ exception with description "Attempted to use null object" thrown in the test body.
ccm> ccm node1 start --wait-other-notice --wait-for-binary-proto
ccm> ccm node2 start --wait-other-notice --wait-for-binary-proto
[  FAILED  ] DcAwarePolicyTest.Integration_Cassandra_AllowRemoteDcsForLocalCl (37067 ms)

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with DcAwarePolicyTest.Integration_Cassandra_AllowRemoteDcsForLocalCl and reproduce it using the ccm node stop/start sequence in the report. Inspect tests/src/integration/objects/future.hpp at line 152 and the surrounding integration test code to determine why the read timeout and null-object exception occur; done means the test reliably passes when run repeatedly.

Written by the indexing model from the issue text.

Assessment

Tech stack
cassandra, cpp, rust
Domain
databases, testing-qa
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.