mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-13 16:21:06 +00:00
Notification-based block pinning (#13157)
* Worker * Reorganize and unpin onnotification drop * Pin in state-db, pass block number * Pin blocks in blockchain db * Switch to reference counted LRU * Disable pinning when we keep all blocks * Fix pinning hint for state-db * Remove pinning from backend layer * Improve readability * Add justifications to test * Fix justification behaviour * Remove debug prints * Convert channels to tracing_unbounded * Add comments to the test * Documentation and Cleanup * Move task start to client * Simplify cache * Improve test, remove unwanted log * Add tracing logs, remove expect for block number * Cleanup * Add conversion method for unpin handle to Finalitynotification * Revert unwanted changes * Improve naming * Make clippy happy * Fix docs Co-authored-by: Michal Kucharczyk <1728078+michalkucharczyk@users.noreply.github.com> * Use `NumberFor` instead of u64 in API * Hand over weak reference to unpin worker task * Unwanted * &Hash -> Hash * Remove number from interface, rename `_unpin_handle`, LOG_TARGET * Move RwLock one layer up * Apply code style suggestions * Improve comments * Replace lru crate by schnellru * Only insert values for pinned items + better docs * Apply suggestions from code review Co-authored-by: Bastian Köcher <git@kchr.de> * Improve comments, log target and test Co-authored-by: Michal Kucharczyk <1728078+michalkucharczyk@users.noreply.github.com> Co-authored-by: Bastian Köcher <git@kchr.de>
This commit is contained in:
@@ -593,16 +593,17 @@ mod tests {
|
||||
fn import_header(&self, header: Header) {
|
||||
let hash = header.hash();
|
||||
let number = *header.number();
|
||||
|
||||
let (tx, _rx) = tracing_unbounded("unpin-worker-channel", 10_000);
|
||||
self.known_blocks.lock().insert(hash, number);
|
||||
self.sender
|
||||
.unbounded_send(BlockImportNotification {
|
||||
.unbounded_send(BlockImportNotification::<Block>::new(
|
||||
hash,
|
||||
origin: BlockOrigin::File,
|
||||
BlockOrigin::File,
|
||||
header,
|
||||
is_new_best: false,
|
||||
tree_route: None,
|
||||
})
|
||||
false,
|
||||
None,
|
||||
tx,
|
||||
))
|
||||
.unwrap();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user