Jack Grigg
a87dca00e2
Documentation updates, fixes, and cleanups
...
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2023-07-19 14:54:01 +00:00
Jack Grigg
2a98f94f05
Add more debug and trace logging
...
The `Debug` impl for `sapling::Node` is updated to output hex-encoded
bytes for readability.
2023-07-18 17:23:57 +00:00
Jack Grigg
510944777c
Transactionally modify the wallet DB in `replace_queue_entries`
...
We don't want to delete old scan range queue entries unless we are
guaranteed to write the updated queue entries.
2023-07-18 17:23:57 +00:00
Jack Grigg
281dbd5524
Ensure that `extended_range` in `scan_complete` is a superset of `range`
...
Previously `extended_range` only covered the extent of the leaves of
all subtrees in which notes were found during a scan. When the scanned
range was large, this was not guaranteed to be contained within the
subtree leaves, causing an assertion failure when an invalid `ScanRange`
was constructed.
2023-07-18 17:23:57 +00:00
Jack Grigg
f7163e9dd9
Code simplifications
...
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2023-07-18 17:23:55 +00:00
Jack Grigg
bb920341a6
Fix bug in `RightFirstDisjoint` insertion logic
2023-07-18 17:22:48 +00:00
Jack Grigg
2c0acac1bd
Use explicit arguments for internal `suggest_scan_ranges` helper
...
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2023-07-18 17:22:48 +00:00
Jack Grigg
e3aeb63e0a
Fix off-by-one bugs with `ScanRange` end bounds
...
Maximum chain heights are end-inclusive, while `ScanRange` is
end-exclusive.
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2023-07-12 16:27:52 +00:00
Kris Nuttycombe
352e1c709a
Add a test for `scan_complete` and `update_chain_tip`
2023-07-07 20:13:45 -06:00
Kris Nuttycombe
6db4355fc4
Fix an error in dominance calculation.
2023-07-07 20:13:45 -06:00
Kris Nuttycombe
6fa0b46d8e
Implement `suggest_scan_ranges` and `update_chain_tip`
...
This implements a priority queue backed by the wallet database for scan
range ordering. The scan queue is updated on each call to `put_blocks`
or to `update_chain_tip`.
2023-07-07 20:13:45 -06:00