elastickv-list-routes

command
v0.0.0-...-85f9890 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 26, 2026 License: AGPL-3.0 Imports: 12 Imported by: 0

Documentation

Overview

elastickv-list-routes prints the cluster's current route catalog as JSON. Used by the Composed-1 M5a Jepsen setup-hook verification to assert the launch script's --shardRanges actually placed the M5 table-route keys on the expected Raft groups before any workload op runs.

Per the design doc (docs/design/2026_06_02_partial_composed1_m5_jepsen_route_shuffle.md §3.3), the Jepsen client's setup! shells out to this tool rather than re-implementing the gRPC client in Clojure: a JSON contract is stable across versions and a future ListRoutes schema change shows up as an unmarshal failure rather than as a silent mis-routing during a Jepsen run.

Usage:

elastickv-list-routes --address 127.0.0.1:50051

Output (stdout, one JSON object):

{
  "catalog_version": 7,
  "routes": [
    {"route_id": 100, "raft_group_id": 1, "start": "...", "end": "...", "state": "ROUTE_STATE_ACTIVE"},
    ...
  ]
}

`start` and `end` are base64-encoded raw bytes so any byte sequence (including unprintables in the routing keyspace) survives the JSON round-trip without quoting issues. Non-zero exit on any error so the Jepsen setup-hook sees the failure verbatim.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL