chia-blockchain/chia/full_node
Kyle Altendorf 9e8d6ebd71
rework LockQueue as PriorityMutex (#14920)
* explore a simplification of the blockchain priority lock queue

* add some tests

* correct task tracking

* use time.perf_counter for better resolution on windows

* just count an integer for request order retention

* stop using time in the (new) tests as well

* add tests and a couple no covers

* less existing test refactoring

* use a sync PriorityQueue

* switch to deques

* address bugs and simplify priority to deque mapping

* remove unused attribute ._priority_type

* make LockQueu.create() not async

* explain the active element check on wait cancellation

* drop LockQueue._process()

* import final from typing_extensions

* rename LockQueue to PriorityMutex

* remove test from mypy exclusions

* clean up straggling lock references

* ignore test failure case line coverage

* add a monkeypatch test ;[

* remove queued callback feature

* remove todos
2023-06-07 14:08:45 -05:00
..
__init__.py git mv src chia 2021-04-04 21:41:39 -07:00
bitcoin_fee_estimator.py simplify fee estimator by not leaking MempoolItem into its interface (#14685) 2023-02-27 16:34:11 -06:00
block_height_map.py remove leading newlines from indented code blocks (#14653) 2023-02-23 21:53:48 -06:00
block_store.py full_node: Drop cache logs in BlockStore (#14777) 2023-03-08 12:14:21 -06:00
bundle_tools.py move SerializedProgram to its own file (#14391) 2023-01-27 17:20:23 -06:00
coin_store.py remove leading newlines from indented code blocks (#14653) 2023-02-23 21:53:48 -06:00
fee_estimate_store.py Fee estimation. (#13645) 2022-10-18 09:12:22 -05:00
fee_estimate.py Correct fee estimate calculation to be in mojos, not millimojos (#14474) 2023-02-04 14:09:39 -06:00
fee_estimation.py simplify fee estimator by not leaking MempoolItem into its interface (#14685) 2023-02-27 16:34:11 -06:00
fee_estimator_constants.py Test get_bucket_index (#14294) 2023-01-13 11:16:23 -06:00
fee_estimator_example.py simplify fee estimator by not leaking MempoolItem into its interface (#14685) 2023-02-27 16:34:11 -06:00
fee_estimator_interface.py simplify fee estimator by not leaking MempoolItem into its interface (#14685) 2023-02-27 16:34:11 -06:00
fee_estimator.py Correct fee estimate calculation to be in mojos, not millimojos (#14474) 2023-02-04 14:09:39 -06:00
fee_history.py Fee estimation. (#13645) 2022-10-18 09:12:22 -05:00
fee_tracker.py simplify fee estimator by not leaking MempoolItem into its interface (#14685) 2023-02-27 16:34:11 -06:00
full_node_api.py rework LockQueue as PriorityMutex (#14920) 2023-06-07 14:08:45 -05:00
full_node_store.py cleanup adjacent string literals (#14650) 2023-02-22 17:16:07 -06:00
full_node.py rework LockQueue as PriorityMutex (#14920) 2023-06-07 14:08:45 -05:00
generator.py Generator mod cleanup and simplification (#15055) 2023-04-18 16:30:10 -05:00
hint_management.py factor out coin- and PH subscription handling in order to add unit tests (#14222) 2023-01-05 15:24:58 -06:00
hint_store.py full node optimizations (#14562) 2023-02-13 22:34:31 -06:00
mempool_check_conditions.py Fork infrastructure (#15299) 2023-05-18 20:20:11 -05:00
mempool_manager.py Fork infrastructure (#15299) 2023-05-18 20:20:11 -05:00
mempool.py Identical spend aggregation (#13799) 2023-05-12 10:55:53 -05:00
pending_tx_cache.py remove leading newlines from indented code blocks (#14653) 2023-02-23 21:53:48 -06:00
signage_point.py configure isort to add the future annotations import (#13327) 2022-09-30 03:40:22 -05:00
subscriptions.py remove leading newlines from indented code blocks (#14653) 2023-02-23 21:53:48 -06:00
sync_store.py Introduce sync_store.Peak (#13615) 2022-11-18 10:44:13 -06:00
tx_processing_queue.py add new, optimized tx queue (#13887) 2022-12-07 16:03:14 -06:00
weight_proof.py Weight proof typing (#15316) 2023-05-22 10:23:33 -05:00