Commit graph

43 commits

Author SHA1 Message Date
junderw
390c4a7706
Use ManuallyDrop 2023-07-04 17:19:41 -07:00
Mononaut
8fdc44aa89
replace audit_pool hashmap with a vec 2023-07-03 22:16:35 -04:00
Mononaut
cfa2363743
only return rates changed since last update 2023-07-03 12:01:49 -04:00
Mononaut
897c667f17
return sigop-adjusted effective fee rates 2023-07-03 12:01:06 -04:00
Mononaut
078bc1d914
fix and consolidate tx ordering logic 2023-07-03 11:57:12 -04:00
Mononaut
23d487b904
Mimic Core's ordering for equal-score transactions 2023-07-03 10:28:32 -04:00
junderw
0ddfa94b59
Ran cargo fmt 2023-07-03 10:18:22 -04:00
Mononaut
ccbed8ec58
Use min(feerate,ancestor_feerate) for ancestor score 2023-07-03 10:18:22 -04:00
junderw
552818607a
Better initial capacity 2023-07-03 10:18:22 -04:00
Mononaut
0886e850f9
Pass gbt mempool data directly without serialization 2023-07-03 10:18:21 -04:00
Mononaut
5065fa42d0
calculate total block weights inside rust gbt 2023-07-03 10:18:21 -04:00
junderw
2838b068f7
Increased performance 2023-07-03 10:18:21 -04:00
Mononaut
79a10ee833
vsize -> sigop_adjusted_vsize 2023-07-03 10:18:21 -04:00
Mononaut
10beb76585
conform to core's gbt quirks 2023-07-03 10:18:21 -04:00
junderw
6650541b2d
Added Logging and refactored a bit 2023-07-03 10:18:20 -04:00
Mononaut
702c4c123e
remove unnecessary option wrapper from gbt return value 2023-07-03 10:18:20 -04:00
Mononaut
1688b7d24e
fix handling of used txs at top of mempool stack 2023-07-03 10:18:20 -04:00
Mononaut
75fd4ff5e1
swap mempool_array deque for a mempool_stack vec 2023-07-03 10:18:20 -04:00
Mononaut
ac8f88da38
protect ancestor data from outside assignments 2023-07-03 10:18:20 -04:00
Mononaut
7873f1c26a
fix rust gbt cpfp cluster construction 2023-07-03 10:18:20 -04:00
Mononaut
a66c0c88ce
fix rust gbt priority queue handling 2023-07-03 10:18:20 -04:00
junderw
5d48ae1eec
Use U32HasherState for HashSet 2023-07-03 10:18:19 -04:00
junderw
1ed0f86ed9
calc_new_score can be private 2023-07-03 10:18:18 -04:00
junderw
609df31e0c
Fix clippy pedantic and nursery lints as well 2023-07-03 10:18:18 -04:00
junderw
e61ae59e53
Add safety comments 2023-07-03 10:18:18 -04:00
junderw
e3f4c33f03
Protect score from outside assignment and document the requirements 2023-07-03 10:18:17 -04:00
junderw
af4919a98b
Use u32hasher with PriorityQueue as well 2023-07-03 10:18:17 -04:00
junderw
939d2230d2
Use bytemuck instead of unsafe Rust 2023-07-03 10:18:17 -04:00
junderw
59b19eefe3
Move u32hasher into its own module, don't expose the Hasher for use. 2023-07-03 10:18:17 -04:00
junderw
3c652bdcbc
Optimize audit_pool key hashing as well. Use a const for starting capacity for tx related lists. 2023-07-03 10:18:17 -04:00
junderw
ded2352cf8
Use a class to hold state for Rust GbtGenerator 2023-07-03 10:18:17 -04:00
junderw
8cfda1a546
Use tokio async/await instead of callbacks 2023-07-03 10:18:17 -04:00
junderw
5f161e73c7
Check callback status in thread 2023-07-03 10:18:16 -04:00
junderw
dfe24ed9d7
Remove all unwrap() calls 2023-07-03 10:18:16 -04:00
junderw
4661bea2f0
Use N-API ThreadsafeFunction 2023-07-03 10:18:16 -04:00
junderw
2d4963c2df
Feature: Use napi-rs instead of neon 2023-07-03 10:18:16 -04:00
junderw
0f1f151d65
Remove empty function 2023-07-03 10:18:16 -04:00
junderw
d2a47b92c8
Move conversion logic to struct file 2023-07-03 10:18:16 -04:00
junderw
83bf9229e7
Fix: Some of the clippy pedantic lints 2023-07-03 10:18:15 -04:00
mononaut
178bb960e9
Remove redundant gbt function
Co-authored-by: Jonathan Underwood <jonathan.underwood4649@gmail.com>
2023-07-03 10:18:15 -04:00
Mononaut
0e00881826
Refactor rust code for style 2023-07-03 10:18:15 -04:00
Mononaut
1d51b01bd1
Implement rust gbt updateBlockTemplates 2023-07-03 10:18:15 -04:00
Mononaut
52bb8b4a4d
Rust GBT proof of concept 2023-07-03 10:18:14 -04:00