4.7 KiB
crawl_shards
Requests information from peer servers about which shards of historical ledger data they have available. [New in: rippled 1.2.0][]
The crawl_shards method is an admin method that cannot be run by unprivileged users.
Request Format
An example of the request format:
WebSocket
{
"command": "crawl_shards",
"pubkey": true,
"limit": 2
}
JSON-RPC
{
"method": "crawl_shards",
"params": [
{
"pubkey": true,
"limit": 2
}
]
}
Note: There is no command-line syntax for this method. Use the [json method][] to access this from the command line.
The request includes the following fields:
Field |
Type | Description |
|---|---|---|
pubkey |
Boolean | (Optional) If true, the response includes the node public keys (for peer-to-peer communications) of servers that were crawled. The default is false. |
limit |
Number | (Optional) How many hops deep to search. The default is 0, which searches direct peers only. With a limit of 1, searches peers' peers also. (The number of peers searched potentially grows exponentially as limit increases.) The maximum value is 3. |
Response Format
An example of a successful response:
WebSocket
{
"result": {
"complete_shards": "1-2,5,8-9,584,1973,2358",
"peers": [
{
"complete_shards": "1-2,8,47,371,464,554,653,857,1076,1402,1555,1708,1813,1867",
"public_key": "n9LxFZiySnfDSvfh23N94UxsFkCjWyrchTeKHcYE6tJJQL5iejb2"
},
{
"complete_shards": "8-9,584",
"ip": "192.168.1.132",
"public_key": "n9MN5xwYqbrj64rtfZAXQy7Y3sNxXZJeLt7Lj61a9DYEZ4SE2tQQ"
}
]
},
"status": "success",
"type": "response"
}
JSON-RPC
200 OK
{
"result": {
"complete_shards": "1-2,5,8-9,584,1973,2358",
"peers": [
{
"complete_shards": "1-2,8,47,371,464,554,653,857,1076,1402,1555,1708,1813,1867",
"public_key": "n9LxFZiySnfDSvfh23N94UxsFkCjWyrchTeKHcYE6tJJQL5iejb2"
},
{
"complete_shards": "8-9,584",
"ip": "192.168.1.132",
"public_key": "n9MN5xwYqbrj64rtfZAXQy7Y3sNxXZJeLt7Lj61a9DYEZ4SE2tQQ"
}
],
"status": "success"
}
}
The response follows the [standard format][], with a successful result containing the following fields:
Field |
Type | Description |
|---|---|---|
complete_shards |
String | (May be omitted) The range of history shards that are available on the local server. This may be disjointed. For example, 1-2,5,7-9 indicates that shards 1, 2, 5, 7, 8, and 9 are available. Omitted if this server does not have any history sharding enabled or does not have any shards available. |
peers |
Array | List of Peer Shard Objects (see below) describing which history shards each peer has available. |
Peer Shard Objects
Each member of the peers array of the response is an object that describes one server in the peer-to-peer network. The list only includes peers that have at least one complete history shard available. Each object in the array has the following fields:
Field |
Type | Description |
|---|---|---|
complete_shards |
String | The range of history shards this peer has available. This may be disjointed. For example, 1-2,5,7-9 indicates that shards 1, 2, 5, 7, 8, and 9 are available. |
ip |
String | (May be omitted) The IP address of the peer this object describes. This may be an IPv4 or IPv6 address. Omitted if this is a private peer. |
public_key |
String | (Omitted unless the request specified "pubkey": true) The public key this peer uses for peer-to-peer communications, in the XRP Ledger's base58 format. |
Possible Errors
- Any of the [universal error types][].
invalidParams- One or more required fields were omitted from the request, or a provided field was specified as the wrong data type.
{% include '_snippets/rippled-api-links.md' %} {% include '_snippets/tx-type-links.md' %} {% include '_snippets/rippled_versions.md' %}