Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

unit tests try to talk to themselves via rpc #14388

Closed
avikivity opened this issue Jun 25, 2023 · 5 comments · Fixed by #14558
Closed

unit tests try to talk to themselves via rpc #14388

avikivity opened this issue Jun 25, 2023 · 5 comments · Fixed by #14558
Assignees
Milestone

Comments

@avikivity
Copy link
Member

running any cql_query_test shows (may need debug mode to slow it down)

ERROR 2023-06-25 20:33:52,036 [shard 0] rpc - client 127.0.0.1:7000: client connection dropped: connection is closed
ERROR 2023-06-25 20:33:52,142 [shard 0] rpc - client 127.0.0.1:7000: client connection dropped: connection is closed
ERROR 2023-06-25 20:33:52,241 [shard 0] rpc - client 127.0.0.1:7000: client connection dropped: connection is closed
ERROR 2023-06-25 20:33:52,342 [shard 0] rpc - client 127.0.0.1:7000: client connection dropped: connection is closed
ERROR 2023-06-25 20:33:52,439 [shard 0] rpc - client 127.0.0.1:7000: client connection dropped: connection is closed

this is wrong, cql_test_env shouldn't try to talk to anything.

@avikivity
Copy link
Member Author

@kbr-scylla @kostja

@kostja
Copy link
Contributor

kostja commented Jun 26, 2023

@margdoc I thinik this is something you could look at, CC @kbr-scylla

@nyh
Copy link
Contributor

nyh commented Jun 26, 2023

@avikivity I'm doing "wireshark" over an actual single-node Scylla run (not a unit test), and it also seems to be "talking to itself" - sending a message to TCP port 7000 (rpc) to 127.0.0.1 (this node itself), roughly once every 0.1 seconds, very regularly. I'm not sure it's the same issue that you saw in unit tests, but maybe? Why would Scylla need to send itself messages over TCP?

@kostja
Copy link
Contributor

kostja commented Jun 26, 2023

Direct failure detector currently doesn't make a distinction between self and other nodes in the cluster. This can be fixed now after @kbr-scylla refactoring of CQL query processor, we can load host id early and detect that we're trying to ping self in the failure detector.

kbr-scylla added a commit that referenced this issue Jul 7, 2023
…ntin Osipov

Avoid pinging self in direct failure detector, this adds confusing noise and adds constant overhead.
Fixes #14388

Closes #14558

* github.com:scylladb/scylladb:
  direct_fd: do not ping self
  raft: initialize raft_group_registry with host id early
  raft: code cleanup
@DoronArazii DoronArazii added this to the 5.4 milestone Aug 29, 2023
@avikivity
Copy link
Member Author

Minor, not backporting.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants