scylladb / scylladb/python-rs-driver

Consider adding event listener for `CLIENT_ROUTES_CHANGE`

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

Nobody has claimed this yet.

Dominant language
Rust
Stars
6
Forks
7
Avg merge
5d 13h
Merged PRs (30d)
9

Description

(test/cluster/test_client_routes.py:161-184) calls register_watchers({CLIENT_ROUTES_CHANGE: cb}) on the CC, so that test_events, test_client_routes_snapshot_transfer and test_huge_event
can assert the raw pushed payload (change_type, connection_ids, host_ids).

We need to consider adding event listener for CLIENT_ROUTES_CHANGE and probably other events such a 'TOPOLOGY_CHANGE' etc. It would first require implementing this in Rust Driver. Enabling this test would also require either changing the Rust Driver ClientRoutesSessionBuilder to be able to accept mock routes this test creates or changing test set up.

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 test/cluster/test_client_routes.py:161-184 and the disabled or incomplete coverage around test_events, test_client_routes_snapshot_transfer, and test_huge_event. Then inspect the Rust Driver's ClientRoutesSessionBuilder and the register_watchers setup. Done means CLIENT_ROUTES_CHANGE events expose change_type, connection_ids, and host_ids to the tests, with the mock-route setup working; broader event support remains to be clarified.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
backend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.