EIP-1559 adds some complexity to how the transaction pool needs to be managed. For example, when replacing a transaction by fee, the naive strategy of replacing any transaction where the FEECAP
is higher than the precedent one can lead to DoS attacks, even if there is a minimum "bump", because whatever portion of the FEECAP
isn't burnt or sent to miners is refunded to the user. Similarly, a naive transaction sorting strategy by the amount sent to miners can cause the transaction pool to have to be re-sorted at every block for legacy transactions.
This document details the approaches taken by various implementation team for four elements of transaction pool management: replacement, eviction, sorting and gossping. Hopefully, by comparing various approaches, we can suggest a prefered one, or at the very least make explicit the tradeoffs between certain approaches.
How do we decide whether to replace an existing transaction in the transaction pool by another one, likely with a higher "gas price"?
How do we decide which transactions to evict from the transaction pool and why?
How do we decide the order by which transactions are sorted in the transaction pool (and hence included in a block)? Ideally, how do we avoid re-sorting the transaction pool at every block if the base fee has moved?
How do we decide which transaction to gossip, not gossip or use to mark a peer as "bad" and drop it?
or
or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up
Syntax | Example | Reference | |
---|---|---|---|
# Header | Header | 基本排版 | |
- Unordered List |
|
||
1. Ordered List |
|
||
- [ ] Todo List |
|
||
> Blockquote | Blockquote |
||
**Bold font** | Bold font | ||
*Italics font* | Italics font | ||
~~Strikethrough~~ | |||
19^th^ | 19th | ||
H~2~O | H2O | ||
++Inserted text++ | Inserted text | ||
==Marked text== | Marked text | ||
[link text](https:// "title") | Link | ||
 | Image | ||
`Code` | Code |
在筆記中貼入程式碼 | |
```javascript var i = 0; ``` |
|
||
:smile: | ![]() |
Emoji list | |
{%youtube youtube_id %} | Externals | ||
$L^aT_eX$ | LaTeX | ||
:::info This is a alert area. ::: |
This is a alert area. |
On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?
Please give us some advice and help us improve HackMD.
Syncing