mirror of
https://gitlab.com/veilid/veilid.git
synced 2025-08-03 12:16:22 -04:00
add offline subkeys to dht record report
This commit is contained in:
parent
e89359e1f5
commit
4a190a6853
7 changed files with 83 additions and 3 deletions
|
@ -2805,6 +2805,7 @@
|
|||
"required": [
|
||||
"local_seqs",
|
||||
"network_seqs",
|
||||
"offline_subkeys",
|
||||
"subkeys"
|
||||
],
|
||||
"properties": {
|
||||
|
@ -2826,6 +2827,27 @@
|
|||
"minimum": 0.0
|
||||
}
|
||||
},
|
||||
"offline_subkeys": {
|
||||
"description": "The subkeys that have been writen offline that still need to be flushed",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "array",
|
||||
"items": [
|
||||
{
|
||||
"type": "integer",
|
||||
"format": "uint32",
|
||||
"minimum": 0.0
|
||||
},
|
||||
{
|
||||
"type": "integer",
|
||||
"format": "uint32",
|
||||
"minimum": 0.0
|
||||
}
|
||||
],
|
||||
"maxItems": 2,
|
||||
"minItems": 2
|
||||
}
|
||||
},
|
||||
"subkeys": {
|
||||
"description": "The actual subkey range within the schema being reported on This may be a subset of the requested range if it exceeds the schema limits or has more than 512 subkeys",
|
||||
"type": "array",
|
||||
|
|
|
@ -382,26 +382,30 @@ class DHTRecordDescriptor:
|
|||
|
||||
class DHTRecordReport:
|
||||
subkeys: list[tuple[ValueSubkey, ValueSubkey]]
|
||||
offline_subkeys: list[tuple[ValueSubkey, ValueSubkey]]
|
||||
local_seqs: list[ValueSeqNum]
|
||||
network_seqs: list[ValueSeqNum]
|
||||
|
||||
def __init__(
|
||||
self,
|
||||
subkeys: list[tuple[ValueSubkey, ValueSubkey]],
|
||||
offline_subkeys: list[tuple[ValueSubkey, ValueSubkey]],
|
||||
local_seqs: list[ValueSeqNum],
|
||||
network_seqs: list[ValueSeqNum],
|
||||
):
|
||||
self.subkeys = subkeys
|
||||
self.offline_subkey = offline_subkeys
|
||||
self.local_seqs = local_seqs
|
||||
self.network_seqs = network_seqs
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"<{self.__class__.__name__}(subkeys={self.subkeys!r}, local_seqs={self.local_seqs!r}, network_seqs={self.network_seqs!r})>"
|
||||
return f"<{self.__class__.__name__}(subkeys={self.subkeys!r}, offline_subkeys={self.offline_subkeys!r}, local_seqs={self.local_seqs!r}, network_seqs={self.network_seqs!r})>"
|
||||
|
||||
@classmethod
|
||||
def from_json(cls, j: dict) -> Self:
|
||||
return cls(
|
||||
[[p[0], p[1]] for p in j["subkeys"]],
|
||||
[[p[0], p[1]] for p in j["offline_subkeys"]],
|
||||
[ValueSeqNum(s) for s in j["local_seqs"]],
|
||||
[ValueSeqNum(s) for s in j["network_seqs"]],
|
||||
)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue