@aztec/p2p 0.69.1 → 0.71.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dest/client/factory.d.ts.map +1 -1
- package/dest/client/factory.js +6 -5
- package/dest/client/p2p_client.d.ts +16 -2
- package/dest/client/p2p_client.d.ts.map +1 -1
- package/dest/client/p2p_client.js +17 -9
- package/dest/config.d.ts +3 -0
- package/dest/config.d.ts.map +1 -1
- package/dest/config.js +6 -1
- package/dest/mem_pools/attestation_pool/kv_attestation_pool.d.ts +1 -1
- package/dest/mem_pools/attestation_pool/kv_attestation_pool.d.ts.map +1 -1
- package/dest/mem_pools/attestation_pool/kv_attestation_pool.js +3 -2
- package/dest/mem_pools/attestation_pool/memory_attestation_pool.d.ts +1 -1
- package/dest/mem_pools/attestation_pool/memory_attestation_pool.d.ts.map +1 -1
- package/dest/mem_pools/attestation_pool/memory_attestation_pool.js +3 -2
- package/dest/mem_pools/epoch_proof_quote_pool/memory_epoch_proof_quote_pool.d.ts +1 -1
- package/dest/mem_pools/epoch_proof_quote_pool/memory_epoch_proof_quote_pool.d.ts.map +1 -1
- package/dest/mem_pools/epoch_proof_quote_pool/memory_epoch_proof_quote_pool.js +3 -2
- package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.d.ts +20 -5
- package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.js +134 -55
- package/dest/mem_pools/tx_pool/memory_tx_pool.d.ts +2 -1
- package/dest/mem_pools/tx_pool/memory_tx_pool.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool/memory_tx_pool.js +11 -3
- package/dest/mem_pools/tx_pool/priority.d.ts +8 -0
- package/dest/mem_pools/tx_pool/priority.d.ts.map +1 -0
- package/dest/mem_pools/tx_pool/priority.js +12 -0
- package/dest/mem_pools/tx_pool/tx_pool.d.ts +7 -1
- package/dest/mem_pools/tx_pool/tx_pool.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool/tx_pool_test_suite.d.ts.map +1 -1
- package/dest/mem_pools/tx_pool/tx_pool_test_suite.js +19 -3
- package/dest/mocks/index.d.ts.map +1 -1
- package/dest/mocks/index.js +4 -4
- package/dest/msg_validators/tx_validator/block_header_validator.d.ts +11 -0
- package/dest/msg_validators/tx_validator/block_header_validator.d.ts.map +1 -0
- package/dest/msg_validators/tx_validator/block_header_validator.js +21 -0
- package/dest/msg_validators/tx_validator/index.d.ts +1 -0
- package/dest/msg_validators/tx_validator/index.d.ts.map +1 -1
- package/dest/msg_validators/tx_validator/index.js +2 -1
- package/dest/services/discv5/discV5_service.d.ts +1 -1
- package/dest/services/discv5/discV5_service.d.ts.map +1 -1
- package/dest/services/discv5/discV5_service.js +3 -3
- package/package.json +7 -7
- package/src/client/factory.ts +5 -13
- package/src/client/p2p_client.ts +27 -9
- package/src/config.ts +9 -0
- package/src/mem_pools/attestation_pool/kv_attestation_pool.ts +2 -2
- package/src/mem_pools/attestation_pool/memory_attestation_pool.ts +2 -2
- package/src/mem_pools/epoch_proof_quote_pool/memory_epoch_proof_quote_pool.ts +2 -2
- package/src/mem_pools/tx_pool/aztec_kv_tx_pool.ts +161 -53
- package/src/mem_pools/tx_pool/memory_tx_pool.ts +11 -3
- package/src/mem_pools/tx_pool/priority.ts +13 -0
- package/src/mem_pools/tx_pool/tx_pool.ts +8 -1
- package/src/mem_pools/tx_pool/tx_pool_test_suite.ts +27 -5
- package/src/mocks/index.ts +3 -4
- package/src/msg_validators/tx_validator/block_header_validator.ts +25 -0
- package/src/msg_validators/tx_validator/index.ts +1 -0
- package/src/services/discv5/discV5_service.ts +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aztec_kv_tx_pool.d.ts","sourceRoot":"","sources":["../../../src/mem_pools/tx_pool/aztec_kv_tx_pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"aztec_kv_tx_pool.d.ts","sourceRoot":"","sources":["../../../src/mem_pools/tx_pool/aztec_kv_tx_pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGlD,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,KAAK,YAAY,EAAqC,MAAM,iBAAiB,CAAC;AACvF,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAInF,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C;;GAEG;AACH,qBAAa,aAAc,YAAW,MAAM;;IA4B1C;;;;;;;OAOG;gBAED,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,YAAY,EACrB,SAAS,GAAE,eAAsC,EACjD,eAAe,GAAE,MAAU,EAC3B,GAAG,SAA8B;IAgB5B,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBnE,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBrD,kBAAkB,IAAI,MAAM,EAAE;IAI9B,gBAAgB,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE;IAOtC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS;IAWnE;;;;OAIG;IACI,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,EAAE,GAAG,SAAS;IAUlD;;;;OAIG;IACI,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,EAAE,GAAG,SAAS;IAU1D;;;;OAIG;IACI,MAAM,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBvC;;;;OAIG;IACI,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAqCnD;;;OAGG;IACI,SAAS,IAAI,EAAE,EAAE;IAQxB;;;OAGG;IACI,cAAc,IAAI,MAAM,EAAE;IAIjC;;;;OAIG;IACH,OAAO,CAAC,UAAU;CA+BnB"}
|
|
@@ -1,88 +1,108 @@
|
|
|
1
|
-
var _AztecKVTxPool_store, _AztecKVTxPool_txs,
|
|
1
|
+
var _AztecKVTxPool_store, _AztecKVTxPool_txs, _AztecKVTxPool_minedTxHashToBlock, _AztecKVTxPool_pendingTxPriorityToHash, _AztecKVTxPool_archive, _AztecKVTxPool_archivedTxs, _AztecKVTxPool_archivedTxIndices, _AztecKVTxPool_archivedTxLimit, _AztecKVTxPool_log, _AztecKVTxPool_metrics;
|
|
2
2
|
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
3
3
|
import { Tx, TxHash } from '@aztec/circuit-types';
|
|
4
|
+
import { ClientIvcProof } from '@aztec/circuits.js';
|
|
4
5
|
import { createLogger } from '@aztec/foundation/log';
|
|
6
|
+
import { getTelemetryClient } from '@aztec/telemetry-client';
|
|
5
7
|
import { PoolInstrumentation, PoolName } from '../instrumentation.js';
|
|
8
|
+
import { getPendingTxPriority } from './priority.js';
|
|
6
9
|
/**
|
|
7
|
-
*
|
|
10
|
+
* KV implementation of the Transaction Pool.
|
|
8
11
|
*/
|
|
9
12
|
export class AztecKVTxPool {
|
|
10
13
|
/**
|
|
11
|
-
* Class constructor for
|
|
12
|
-
* @param store - A KV store.
|
|
14
|
+
* Class constructor for KV TxPool. Initiates our transaction pool as an AztecMap.
|
|
15
|
+
* @param store - A KV store for live txs in the pool.
|
|
16
|
+
* @param archive - A KV store for archived txs.
|
|
17
|
+
* @param telemetry - A telemetry client.
|
|
18
|
+
* @param archivedTxLimit - The number of txs to archive.
|
|
13
19
|
* @param log - A logger.
|
|
14
20
|
*/
|
|
15
|
-
constructor(store, telemetry, log = createLogger('p2p:tx_pool')) {
|
|
21
|
+
constructor(store, archive, telemetry = getTelemetryClient(), archivedTxLimit = 0, log = createLogger('p2p:tx_pool')) {
|
|
16
22
|
_AztecKVTxPool_store.set(this, void 0);
|
|
17
23
|
/** Our tx pool, stored as a Map, with K: tx hash and V: the transaction. */
|
|
18
24
|
_AztecKVTxPool_txs.set(this, void 0);
|
|
19
|
-
/** Index
|
|
20
|
-
|
|
21
|
-
/** Index
|
|
22
|
-
|
|
25
|
+
/** Index from tx hash to the block number in which they were mined, filtered by mined txs. */
|
|
26
|
+
_AztecKVTxPool_minedTxHashToBlock.set(this, void 0);
|
|
27
|
+
/** Index from tx priority (stored as hex) to its tx hash, filtered by pending txs. */
|
|
28
|
+
_AztecKVTxPool_pendingTxPriorityToHash.set(this, void 0);
|
|
29
|
+
/** KV store for archived txs. */
|
|
30
|
+
_AztecKVTxPool_archive.set(this, void 0);
|
|
31
|
+
/** Archived txs map for future lookup. */
|
|
32
|
+
_AztecKVTxPool_archivedTxs.set(this, void 0);
|
|
33
|
+
/** Indexes of the archived txs by insertion order. */
|
|
34
|
+
_AztecKVTxPool_archivedTxIndices.set(this, void 0);
|
|
35
|
+
/** Number of txs to archive. */
|
|
36
|
+
_AztecKVTxPool_archivedTxLimit.set(this, void 0);
|
|
23
37
|
_AztecKVTxPool_log.set(this, void 0);
|
|
24
38
|
_AztecKVTxPool_metrics.set(this, void 0);
|
|
25
39
|
__classPrivateFieldSet(this, _AztecKVTxPool_txs, store.openMap('txs'), "f");
|
|
26
|
-
__classPrivateFieldSet(this,
|
|
27
|
-
__classPrivateFieldSet(this,
|
|
40
|
+
__classPrivateFieldSet(this, _AztecKVTxPool_minedTxHashToBlock, store.openMap('txHashToBlockMined'), "f");
|
|
41
|
+
__classPrivateFieldSet(this, _AztecKVTxPool_pendingTxPriorityToHash, store.openMultiMap('pendingTxFeeToHash'), "f");
|
|
42
|
+
__classPrivateFieldSet(this, _AztecKVTxPool_archivedTxs, archive.openMap('archivedTxs'), "f");
|
|
43
|
+
__classPrivateFieldSet(this, _AztecKVTxPool_archivedTxIndices, archive.openMap('archivedTxIndices'), "f");
|
|
44
|
+
__classPrivateFieldSet(this, _AztecKVTxPool_archivedTxLimit, archivedTxLimit, "f");
|
|
28
45
|
__classPrivateFieldSet(this, _AztecKVTxPool_store, store, "f");
|
|
46
|
+
__classPrivateFieldSet(this, _AztecKVTxPool_archive, archive, "f");
|
|
29
47
|
__classPrivateFieldSet(this, _AztecKVTxPool_log, log, "f");
|
|
30
48
|
__classPrivateFieldSet(this, _AztecKVTxPool_metrics, new PoolInstrumentation(telemetry, PoolName.TX_POOL, () => store.estimateSize()), "f");
|
|
31
49
|
}
|
|
32
50
|
markAsMined(txHashes, blockNumber) {
|
|
51
|
+
if (txHashes.length === 0) {
|
|
52
|
+
return Promise.resolve();
|
|
53
|
+
}
|
|
54
|
+
let deletedPending = 0;
|
|
33
55
|
return __classPrivateFieldGet(this, _AztecKVTxPool_store, "f").transaction(() => {
|
|
34
|
-
let deleted = 0;
|
|
35
56
|
for (const hash of txHashes) {
|
|
36
57
|
const key = hash.toString();
|
|
37
|
-
void __classPrivateFieldGet(this,
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
58
|
+
void __classPrivateFieldGet(this, _AztecKVTxPool_minedTxHashToBlock, "f").set(key, blockNumber);
|
|
59
|
+
const tx = this.getTxByHash(hash);
|
|
60
|
+
if (tx) {
|
|
61
|
+
deletedPending++;
|
|
62
|
+
const fee = getPendingTxPriority(tx);
|
|
63
|
+
void __classPrivateFieldGet(this, _AztecKVTxPool_pendingTxPriorityToHash, "f").deleteValue(fee, key);
|
|
41
64
|
}
|
|
42
65
|
}
|
|
43
|
-
__classPrivateFieldGet(this, _AztecKVTxPool_metrics, "f").recordRemovedObjects(deleted, 'pending');
|
|
44
66
|
__classPrivateFieldGet(this, _AztecKVTxPool_metrics, "f").recordAddedObjects(txHashes.length, 'mined');
|
|
67
|
+
__classPrivateFieldGet(this, _AztecKVTxPool_metrics, "f").recordRemovedObjects(deletedPending, 'pending');
|
|
45
68
|
});
|
|
46
69
|
}
|
|
47
70
|
markMinedAsPending(txHashes) {
|
|
48
71
|
if (txHashes.length === 0) {
|
|
49
72
|
return Promise.resolve();
|
|
50
73
|
}
|
|
74
|
+
let markedAsPending = 0;
|
|
51
75
|
return __classPrivateFieldGet(this, _AztecKVTxPool_store, "f").transaction(() => {
|
|
52
|
-
let deleted = 0;
|
|
53
|
-
let added = 0;
|
|
54
76
|
for (const hash of txHashes) {
|
|
55
77
|
const key = hash.toString();
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
added++;
|
|
62
|
-
void __classPrivateFieldGet(this, _AztecKVTxPool_pendingTxs, "f").add(key);
|
|
78
|
+
void __classPrivateFieldGet(this, _AztecKVTxPool_minedTxHashToBlock, "f").delete(key);
|
|
79
|
+
const tx = this.getTxByHash(hash);
|
|
80
|
+
if (tx) {
|
|
81
|
+
void __classPrivateFieldGet(this, _AztecKVTxPool_pendingTxPriorityToHash, "f").set(getPendingTxPriority(tx), key);
|
|
82
|
+
markedAsPending++;
|
|
63
83
|
}
|
|
64
84
|
}
|
|
65
|
-
__classPrivateFieldGet(this, _AztecKVTxPool_metrics, "f").
|
|
66
|
-
__classPrivateFieldGet(this, _AztecKVTxPool_metrics, "f").
|
|
85
|
+
__classPrivateFieldGet(this, _AztecKVTxPool_metrics, "f").recordAddedObjects(markedAsPending, 'pending');
|
|
86
|
+
__classPrivateFieldGet(this, _AztecKVTxPool_metrics, "f").recordRemovedObjects(markedAsPending, 'mined');
|
|
67
87
|
});
|
|
68
88
|
}
|
|
69
89
|
getPendingTxHashes() {
|
|
70
|
-
return Array.from(__classPrivateFieldGet(this,
|
|
90
|
+
return Array.from(__classPrivateFieldGet(this, _AztecKVTxPool_pendingTxPriorityToHash, "f").values({ reverse: true })).map(x => TxHash.fromString(x));
|
|
71
91
|
}
|
|
72
92
|
getMinedTxHashes() {
|
|
73
|
-
return Array.from(__classPrivateFieldGet(this,
|
|
93
|
+
return Array.from(__classPrivateFieldGet(this, _AztecKVTxPool_minedTxHashToBlock, "f").entries()).map(([txHash, blockNumber]) => [
|
|
74
94
|
TxHash.fromString(txHash),
|
|
75
95
|
blockNumber,
|
|
76
96
|
]);
|
|
77
97
|
}
|
|
78
98
|
getTxStatus(txHash) {
|
|
79
99
|
const key = txHash.toString();
|
|
80
|
-
if (__classPrivateFieldGet(this,
|
|
81
|
-
return 'pending';
|
|
82
|
-
}
|
|
83
|
-
else if (__classPrivateFieldGet(this, _AztecKVTxPool_minedTxs, "f").has(key)) {
|
|
100
|
+
if (__classPrivateFieldGet(this, _AztecKVTxPool_minedTxHashToBlock, "f").has(key)) {
|
|
84
101
|
return 'mined';
|
|
85
102
|
}
|
|
103
|
+
else if (__classPrivateFieldGet(this, _AztecKVTxPool_txs, "f").has(key)) {
|
|
104
|
+
return 'pending';
|
|
105
|
+
}
|
|
86
106
|
else {
|
|
87
107
|
return undefined;
|
|
88
108
|
}
|
|
@@ -94,7 +114,26 @@ export class AztecKVTxPool {
|
|
|
94
114
|
*/
|
|
95
115
|
getTxByHash(txHash) {
|
|
96
116
|
const buffer = __classPrivateFieldGet(this, _AztecKVTxPool_txs, "f").get(txHash.toString());
|
|
97
|
-
|
|
117
|
+
if (buffer) {
|
|
118
|
+
const tx = Tx.fromBuffer(buffer);
|
|
119
|
+
tx.setTxHash(txHash);
|
|
120
|
+
return tx;
|
|
121
|
+
}
|
|
122
|
+
return undefined;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Checks if an archived tx exists and returns it.
|
|
126
|
+
* @param txHash - The tx hash.
|
|
127
|
+
* @returns The transaction metadata, if found, 'undefined' otherwise.
|
|
128
|
+
*/
|
|
129
|
+
getArchivedTxByHash(txHash) {
|
|
130
|
+
const buffer = __classPrivateFieldGet(this, _AztecKVTxPool_archivedTxs, "f").get(txHash.toString());
|
|
131
|
+
if (buffer) {
|
|
132
|
+
const tx = Tx.fromBuffer(buffer);
|
|
133
|
+
tx.setTxHash(txHash);
|
|
134
|
+
return tx;
|
|
135
|
+
}
|
|
136
|
+
return undefined;
|
|
98
137
|
}
|
|
99
138
|
/**
|
|
100
139
|
* Adds a list of transactions to the pool. Duplicates are ignored.
|
|
@@ -102,21 +141,20 @@ export class AztecKVTxPool {
|
|
|
102
141
|
* @returns Empty promise.
|
|
103
142
|
*/
|
|
104
143
|
addTxs(txs) {
|
|
105
|
-
const txHashes = txs.map(tx => tx.getTxHash());
|
|
106
144
|
return __classPrivateFieldGet(this, _AztecKVTxPool_store, "f").transaction(() => {
|
|
107
145
|
let pendingCount = 0;
|
|
108
|
-
for (const
|
|
109
|
-
const txHash =
|
|
146
|
+
for (const tx of txs) {
|
|
147
|
+
const txHash = tx.getTxHash();
|
|
110
148
|
__classPrivateFieldGet(this, _AztecKVTxPool_log, "f").verbose(`Adding tx ${txHash.toString()} to pool`, {
|
|
111
149
|
eventName: 'tx-added-to-pool',
|
|
112
150
|
...tx.getStats(),
|
|
113
151
|
});
|
|
114
152
|
const key = txHash.toString();
|
|
115
153
|
void __classPrivateFieldGet(this, _AztecKVTxPool_txs, "f").set(key, tx.toBuffer());
|
|
116
|
-
if (!__classPrivateFieldGet(this,
|
|
154
|
+
if (!__classPrivateFieldGet(this, _AztecKVTxPool_minedTxHashToBlock, "f").has(key)) {
|
|
117
155
|
pendingCount++;
|
|
118
156
|
// REFACTOR: Use an lmdb conditional write to avoid race conditions with this write tx
|
|
119
|
-
void __classPrivateFieldGet(this,
|
|
157
|
+
void __classPrivateFieldGet(this, _AztecKVTxPool_pendingTxPriorityToHash, "f").set(getPendingTxPriority(tx), key);
|
|
120
158
|
__classPrivateFieldGet(this, _AztecKVTxPool_metrics, "f").recordSize(tx);
|
|
121
159
|
}
|
|
122
160
|
}
|
|
@@ -126,34 +164,48 @@ export class AztecKVTxPool {
|
|
|
126
164
|
/**
|
|
127
165
|
* Deletes transactions from the pool. Tx hashes that are not present are ignored.
|
|
128
166
|
* @param txHashes - An array of tx hashes to be removed from the tx pool.
|
|
129
|
-
* @returns
|
|
167
|
+
* @returns Empty promise.
|
|
130
168
|
*/
|
|
131
169
|
deleteTxs(txHashes) {
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
170
|
+
let pendingDeleted = 0;
|
|
171
|
+
let minedDeleted = 0;
|
|
172
|
+
const deletedTxs = [];
|
|
173
|
+
const poolDbTx = __classPrivateFieldGet(this, _AztecKVTxPool_store, "f").transaction(() => {
|
|
135
174
|
for (const hash of txHashes) {
|
|
136
175
|
const key = hash.toString();
|
|
137
|
-
|
|
138
|
-
if (
|
|
139
|
-
|
|
140
|
-
void __classPrivateFieldGet(this,
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
176
|
+
const tx = this.getTxByHash(hash);
|
|
177
|
+
if (tx) {
|
|
178
|
+
const fee = getPendingTxPriority(tx);
|
|
179
|
+
void __classPrivateFieldGet(this, _AztecKVTxPool_pendingTxPriorityToHash, "f").deleteValue(fee, key);
|
|
180
|
+
const isMined = __classPrivateFieldGet(this, _AztecKVTxPool_minedTxHashToBlock, "f").has(key);
|
|
181
|
+
if (isMined) {
|
|
182
|
+
minedDeleted++;
|
|
183
|
+
}
|
|
184
|
+
else {
|
|
185
|
+
pendingDeleted++;
|
|
186
|
+
}
|
|
187
|
+
if (__classPrivateFieldGet(this, _AztecKVTxPool_archivedTxLimit, "f")) {
|
|
188
|
+
deletedTxs.push(tx);
|
|
189
|
+
}
|
|
190
|
+
void __classPrivateFieldGet(this, _AztecKVTxPool_txs, "f").delete(key);
|
|
191
|
+
void __classPrivateFieldGet(this, _AztecKVTxPool_minedTxHashToBlock, "f").delete(key);
|
|
145
192
|
}
|
|
146
193
|
}
|
|
147
194
|
__classPrivateFieldGet(this, _AztecKVTxPool_metrics, "f").recordRemovedObjects(pendingDeleted, 'pending');
|
|
148
195
|
__classPrivateFieldGet(this, _AztecKVTxPool_metrics, "f").recordRemovedObjects(minedDeleted, 'mined');
|
|
149
196
|
});
|
|
197
|
+
return __classPrivateFieldGet(this, _AztecKVTxPool_archivedTxLimit, "f") ? poolDbTx.then(() => this.archiveTxs(deletedTxs)) : poolDbTx;
|
|
150
198
|
}
|
|
151
199
|
/**
|
|
152
200
|
* Gets all the transactions stored in the pool.
|
|
153
201
|
* @returns Array of tx objects in the order they were added to the pool.
|
|
154
202
|
*/
|
|
155
203
|
getAllTxs() {
|
|
156
|
-
return Array.from(__classPrivateFieldGet(this, _AztecKVTxPool_txs, "f").
|
|
204
|
+
return Array.from(__classPrivateFieldGet(this, _AztecKVTxPool_txs, "f").entries()).map(([hash, buffer]) => {
|
|
205
|
+
const tx = Tx.fromBuffer(buffer);
|
|
206
|
+
tx.setTxHash(TxHash.fromString(hash));
|
|
207
|
+
return tx;
|
|
208
|
+
});
|
|
157
209
|
}
|
|
158
210
|
/**
|
|
159
211
|
* Gets the hashes of all transactions currently in the tx pool.
|
|
@@ -162,6 +214,33 @@ export class AztecKVTxPool {
|
|
|
162
214
|
getAllTxHashes() {
|
|
163
215
|
return Array.from(__classPrivateFieldGet(this, _AztecKVTxPool_txs, "f").keys()).map(x => TxHash.fromString(x));
|
|
164
216
|
}
|
|
217
|
+
/**
|
|
218
|
+
* Archives a list of txs for future reference. The number of archived txs is limited by the specified archivedTxLimit.
|
|
219
|
+
* @param txs - The list of transactions to archive.
|
|
220
|
+
* @returns Empty promise.
|
|
221
|
+
*/
|
|
222
|
+
archiveTxs(txs) {
|
|
223
|
+
return __classPrivateFieldGet(this, _AztecKVTxPool_archive, "f").transaction(() => {
|
|
224
|
+
// calcualte the head and tail indices of the archived txs by insertion order.
|
|
225
|
+
let headIdx = (__classPrivateFieldGet(this, _AztecKVTxPool_archivedTxIndices, "f").entries({ limit: 1, reverse: true }).next().value?.[0] ?? -1) + 1;
|
|
226
|
+
let tailIdx = __classPrivateFieldGet(this, _AztecKVTxPool_archivedTxIndices, "f").entries({ limit: 1 }).next().value?.[0] ?? 0;
|
|
227
|
+
for (const tx of txs) {
|
|
228
|
+
while (headIdx - tailIdx >= __classPrivateFieldGet(this, _AztecKVTxPool_archivedTxLimit, "f")) {
|
|
229
|
+
const txHash = __classPrivateFieldGet(this, _AztecKVTxPool_archivedTxIndices, "f").get(tailIdx);
|
|
230
|
+
if (txHash) {
|
|
231
|
+
void __classPrivateFieldGet(this, _AztecKVTxPool_archivedTxs, "f").delete(txHash);
|
|
232
|
+
void __classPrivateFieldGet(this, _AztecKVTxPool_archivedTxIndices, "f").delete(tailIdx);
|
|
233
|
+
}
|
|
234
|
+
tailIdx++;
|
|
235
|
+
}
|
|
236
|
+
const archivedTx = new Tx(tx.data, ClientIvcProof.empty(), tx.unencryptedLogs, tx.contractClassLogs, tx.enqueuedPublicFunctionCalls, tx.publicTeardownFunctionCall);
|
|
237
|
+
const txHash = tx.getTxHash().toString();
|
|
238
|
+
void __classPrivateFieldGet(this, _AztecKVTxPool_archivedTxs, "f").set(txHash, archivedTx.toBuffer());
|
|
239
|
+
void __classPrivateFieldGet(this, _AztecKVTxPool_archivedTxIndices, "f").set(headIdx, txHash);
|
|
240
|
+
headIdx++;
|
|
241
|
+
}
|
|
242
|
+
});
|
|
243
|
+
}
|
|
165
244
|
}
|
|
166
|
-
_AztecKVTxPool_store = new WeakMap(), _AztecKVTxPool_txs = new WeakMap(),
|
|
167
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXp0ZWNfa3ZfdHhfcG9vbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tZW1fcG9vbHMvdHhfcG9vbC9henRlY19rdl90eF9wb29sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVsRCxPQUFPLEVBQWUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFJbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBR3RFOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGFBQWE7SUFleEI7Ozs7T0FJRztJQUNILFlBQVksS0FBbUIsRUFBRSxTQUEwQixFQUFFLEdBQUcsR0FBRyxZQUFZLENBQUMsYUFBYSxDQUFDO1FBbkI5Rix1Q0FBcUI7UUFFckIsNEVBQTRFO1FBQzVFLHFDQUErQjtRQUUvQiw2QkFBNkI7UUFDN0IsNENBQThCO1FBQzlCLDJCQUEyQjtRQUMzQiwwQ0FBb0M7UUFFcEMscUNBQWE7UUFFYix5Q0FBa0M7UUFRaEMsdUJBQUEsSUFBSSxzQkFBUSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxNQUFBLENBQUM7UUFDakMsdUJBQUEsSUFBSSwyQkFBYSxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxNQUFBLENBQUM7UUFDM0MsdUJBQUEsSUFBSSw2QkFBZSxLQUFLLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxNQUFBLENBQUM7UUFFL0MsdUJBQUEsSUFBSSx3QkFBVSxLQUFLLE1BQUEsQ0FBQztRQUNwQix1QkFBQSxJQUFJLHNCQUFRLEdBQUcsTUFBQSxDQUFDO1FBQ2hCLHVCQUFBLElBQUksMEJBQVksSUFBSSxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsTUFB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
|
|
245
|
+
_AztecKVTxPool_store = new WeakMap(), _AztecKVTxPool_txs = new WeakMap(), _AztecKVTxPool_minedTxHashToBlock = new WeakMap(), _AztecKVTxPool_pendingTxPriorityToHash = new WeakMap(), _AztecKVTxPool_archive = new WeakMap(), _AztecKVTxPool_archivedTxs = new WeakMap(), _AztecKVTxPool_archivedTxIndices = new WeakMap(), _AztecKVTxPool_archivedTxLimit = new WeakMap(), _AztecKVTxPool_log = new WeakMap(), _AztecKVTxPool_metrics = new WeakMap();
|
|
246
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXp0ZWNfa3ZfdHhfcG9vbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tZW1fcG9vbHMvdHhfcG9vbC9henRlY19rdl90eF9wb29sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVsRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUFlLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRWxFLE9BQU8sRUFBd0Isa0JBQWtCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVuRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsUUFBUSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3JEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGFBQWE7SUE0QnhCOzs7Ozs7O09BT0c7SUFDSCxZQUNFLEtBQW1CLEVBQ25CLE9BQXFCLEVBQ3JCLFlBQTZCLGtCQUFrQixFQUFFLEVBQ2pELGtCQUEwQixDQUFDLEVBQzNCLEdBQUcsR0FBRyxZQUFZLENBQUMsYUFBYSxDQUFDO1FBeENuQyx1Q0FBcUI7UUFFckIsNEVBQTRFO1FBQzVFLHFDQUErQjtRQUUvQiw4RkFBOEY7UUFDOUYsb0RBQThDO1FBRTlDLHNGQUFzRjtRQUN0Rix5REFBd0Q7UUFFeEQsaUNBQWlDO1FBQ2pDLHlDQUF1QjtRQUV2QiwwQ0FBMEM7UUFDMUMsNkNBQXVDO1FBRXZDLHNEQUFzRDtRQUN0RCxtREFBNkM7UUFFN0MsZ0NBQWdDO1FBQ2hDLGlEQUF5QjtRQUV6QixxQ0FBYTtRQUViLHlDQUFrQztRQWlCaEMsdUJBQUEsSUFBSSxzQkFBUSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxNQUFBLENBQUM7UUFDakMsdUJBQUEsSUFBSSxxQ0FBdUIsS0FBSyxD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
|
|
@@ -17,7 +17,7 @@ export declare class InMemoryTxPool implements TxPool {
|
|
|
17
17
|
* Class constructor for in-memory TxPool. Initiates our transaction pool as a JS Map.
|
|
18
18
|
* @param log - A logger.
|
|
19
19
|
*/
|
|
20
|
-
constructor(telemetry
|
|
20
|
+
constructor(telemetry?: TelemetryClient, log?: import("@aztec/foundation/log").Logger);
|
|
21
21
|
markAsMined(txHashes: TxHash[], blockNumber: number): Promise<void>;
|
|
22
22
|
markMinedAsPending(txHashes: TxHash[]): Promise<void>;
|
|
23
23
|
getPendingTxHashes(): TxHash[];
|
|
@@ -29,6 +29,7 @@ export declare class InMemoryTxPool implements TxPool {
|
|
|
29
29
|
* @returns The transaction, if found, 'undefined' otherwise.
|
|
30
30
|
*/
|
|
31
31
|
getTxByHash(txHash: TxHash): Tx | undefined;
|
|
32
|
+
getArchivedTxByHash(): Tx | undefined;
|
|
32
33
|
/**
|
|
33
34
|
* Adds a list of transactions to the pool. Duplicates are ignored.
|
|
34
35
|
* @param txs - An array of txs to be added to the pool.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory_tx_pool.d.ts","sourceRoot":"","sources":["../../../src/mem_pools/tx_pool/memory_tx_pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGlD,OAAO,EAAE,KAAK,eAAe,
|
|
1
|
+
{"version":3,"file":"memory_tx_pool.d.ts","sourceRoot":"","sources":["../../../src/mem_pools/tx_pool/memory_tx_pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGlD,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAInF,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C;;GAEG;AACH,qBAAa,cAAe,YAAW,MAAM;IAcoB,OAAO,CAAC,GAAG;IAb1E;;OAEG;IACH,OAAO,CAAC,GAAG,CAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,UAAU,CAAc;IAEhC,OAAO,CAAC,OAAO,CAA0B;IAEzC;;;OAGG;gBACS,SAAS,GAAE,eAAsC,EAAU,GAAG,yCAA8B;IAOjG,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWnE,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA0BrD,kBAAkB,IAAI,MAAM,EAAE;IAO9B,gBAAgB,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE;IAItC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS;IAWnE;;;;OAIG;IACI,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,EAAE,GAAG,SAAS;IAK3C,mBAAmB,IAAI,EAAE,GAAG,SAAS;IAI5C;;;;OAIG;IACI,MAAM,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBvC;;;;OAIG;IACI,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBnD;;;OAGG;IACI,SAAS,IAAI,EAAE,EAAE;IAIxB;;;OAGG;IACI,cAAc,IAAI,MAAM,EAAE;CAGlC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { Tx, TxHash } from '@aztec/circuit-types';
|
|
2
2
|
import { createLogger } from '@aztec/foundation/log';
|
|
3
|
+
import { getTelemetryClient } from '@aztec/telemetry-client';
|
|
3
4
|
import { PoolInstrumentation, PoolName } from '../instrumentation.js';
|
|
5
|
+
import { getPendingTxPriority } from './priority.js';
|
|
4
6
|
/**
|
|
5
7
|
* In-memory implementation of the Transaction Pool.
|
|
6
8
|
*/
|
|
@@ -9,7 +11,7 @@ export class InMemoryTxPool {
|
|
|
9
11
|
* Class constructor for in-memory TxPool. Initiates our transaction pool as a JS Map.
|
|
10
12
|
* @param log - A logger.
|
|
11
13
|
*/
|
|
12
|
-
constructor(telemetry, log = createLogger('p2p:tx_pool')) {
|
|
14
|
+
constructor(telemetry = getTelemetryClient(), log = createLogger('p2p:tx_pool')) {
|
|
13
15
|
this.log = log;
|
|
14
16
|
this.txs = new Map();
|
|
15
17
|
this.minedTxs = new Map();
|
|
@@ -48,7 +50,10 @@ export class InMemoryTxPool {
|
|
|
48
50
|
return Promise.resolve();
|
|
49
51
|
}
|
|
50
52
|
getPendingTxHashes() {
|
|
51
|
-
return
|
|
53
|
+
return this.getAllTxs()
|
|
54
|
+
.sort((tx1, tx2) => -getPendingTxPriority(tx1).localeCompare(getPendingTxPriority(tx2)))
|
|
55
|
+
.map(tx => tx.getTxHash())
|
|
56
|
+
.filter(txHash => this.pendingTxs.has(txHash.toBigInt()));
|
|
52
57
|
}
|
|
53
58
|
getMinedTxHashes() {
|
|
54
59
|
return Array.from(this.minedTxs.entries()).map(([txHash, blockNumber]) => [TxHash.fromBigInt(txHash), blockNumber]);
|
|
@@ -72,6 +77,9 @@ export class InMemoryTxPool {
|
|
|
72
77
|
const result = this.txs.get(txHash.toBigInt());
|
|
73
78
|
return result === undefined ? undefined : Tx.clone(result);
|
|
74
79
|
}
|
|
80
|
+
getArchivedTxByHash() {
|
|
81
|
+
return undefined;
|
|
82
|
+
}
|
|
75
83
|
/**
|
|
76
84
|
* Adds a list of transactions to the pool. Duplicates are ignored.
|
|
77
85
|
* @param txs - An array of txs to be added to the pool.
|
|
@@ -129,4 +137,4 @@ export class InMemoryTxPool {
|
|
|
129
137
|
return Array.from(this.txs.keys()).map(x => TxHash.fromBigInt(x));
|
|
130
138
|
}
|
|
131
139
|
}
|
|
132
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtb3J5X3R4X3Bvb2wuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbWVtX3Bvb2xzL3R4X3Bvb2wvbWVtb3J5X3R4X3Bvb2wudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUF3QixrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRW5GLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxRQUFRLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHckQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sY0FBYztJQVV6Qjs7O09BR0c7SUFDSCxZQUFZLFlBQTZCLGtCQUFrQixFQUFFLEVBQVUsTUFBTSxZQUFZLENBQUMsYUFBYSxDQUFDO1FBQWpDLFFBQUcsR0FBSCxHQUFHLENBQThCO1FBQ3RHLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxHQUFHLEVBQWMsQ0FBQztRQUNqQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFTSxXQUFXLENBQUMsUUFBa0IsRUFBRSxXQUFtQjtRQUN4RCxNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDN0MsS0FBSyxNQUFNLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FB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
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type Tx } from '@aztec/circuit-types';
|
|
2
|
+
/**
|
|
3
|
+
* Returns a string representing the priority of a tx.
|
|
4
|
+
* Txs with a higher priority value are returned first when retrieving pending tx hashes.
|
|
5
|
+
* We currently use the sum of the priority fees for the tx for this value, represented as hex.
|
|
6
|
+
*/
|
|
7
|
+
export declare function getPendingTxPriority(tx: Tx): string;
|
|
8
|
+
//# sourceMappingURL=priority.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"priority.d.ts","sourceRoot":"","sources":["../../../src/mem_pools/tx_pool/priority.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,sBAAsB,CAAC;AAG/C;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,EAAE,GAAG,MAAM,CAInD"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Buffer32 } from '@aztec/foundation/buffer';
|
|
2
|
+
/**
|
|
3
|
+
* Returns a string representing the priority of a tx.
|
|
4
|
+
* Txs with a higher priority value are returned first when retrieving pending tx hashes.
|
|
5
|
+
* We currently use the sum of the priority fees for the tx for this value, represented as hex.
|
|
6
|
+
*/
|
|
7
|
+
export function getPendingTxPriority(tx) {
|
|
8
|
+
const priorityFees = tx.getGasSettings().maxPriorityFeesPerGas;
|
|
9
|
+
const totalFees = priorityFees.feePerDaGas.toBigInt() + priorityFees.feePerL2Gas.toBigInt();
|
|
10
|
+
return Buffer32.fromBigInt(totalFees).toString();
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpb3JpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbWVtX3Bvb2xzL3R4X3Bvb2wvcHJpb3JpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXBEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsb0JBQW9CLENBQUMsRUFBTTtJQUN6QyxNQUFNLFlBQVksR0FBRyxFQUFFLENBQUMsY0FBYyxFQUFFLENBQUMscUJBQXFCLENBQUM7SUFDL0QsTUFBTSxTQUFTLEdBQUcsWUFBWSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsR0FBRyxZQUFZLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzVGLE9BQU8sUUFBUSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztBQUNuRCxDQUFDIn0=
|
|
@@ -14,6 +14,12 @@ export interface TxPool {
|
|
|
14
14
|
* @returns The transaction, if found, 'undefined' otherwise.
|
|
15
15
|
*/
|
|
16
16
|
getTxByHash(txHash: TxHash): Tx | undefined;
|
|
17
|
+
/**
|
|
18
|
+
* Checks if an archived transaction exists in the pool and returns it.
|
|
19
|
+
* @param txHash - The hash of the transaction, used as an ID.
|
|
20
|
+
* @returns The transaction, if found, 'undefined' otherwise.
|
|
21
|
+
*/
|
|
22
|
+
getArchivedTxByHash(txHash: TxHash): Tx | undefined;
|
|
17
23
|
/**
|
|
18
24
|
* Marks the set of txs as mined, as opposed to pending.
|
|
19
25
|
* @param txHashes - Hashes of the txs to flag as mined.
|
|
@@ -41,7 +47,7 @@ export interface TxPool {
|
|
|
41
47
|
*/
|
|
42
48
|
getAllTxHashes(): TxHash[];
|
|
43
49
|
/**
|
|
44
|
-
* Gets the hashes of pending transactions currently in the tx pool.
|
|
50
|
+
* Gets the hashes of pending transactions currently in the tx pool sorted by priority (see getPendingTxPriority).
|
|
45
51
|
* @returns An array of pending transaction hashes found in the tx pool.
|
|
46
52
|
*/
|
|
47
53
|
getPendingTxHashes(): TxHash[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx_pool.d.ts","sourceRoot":"","sources":["../../../src/mem_pools/tx_pool/tx_pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB;;;OAGG;IACH,MAAM,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjC;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,EAAE,GAAG,SAAS,CAAC;IAE5C;;;OAGG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpE;;;;OAIG;IACH,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtD;;;OAGG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7C;;;OAGG;IACH,SAAS,IAAI,EAAE,EAAE,CAAC;IAElB;;;OAGG;IACH,cAAc,IAAI,MAAM,EAAE,CAAC;IAE3B;;;OAGG;IACH,kBAAkB,IAAI,MAAM,EAAE,CAAC;IAE/B;;;OAGG;IACH,gBAAgB,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,CAAC;IAExD;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;CAC9D"}
|
|
1
|
+
{"version":3,"file":"tx_pool.d.ts","sourceRoot":"","sources":["../../../src/mem_pools/tx_pool/tx_pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB;;;OAGG;IACH,MAAM,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjC;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,EAAE,GAAG,SAAS,CAAC;IAE5C;;;;OAIG;IACH,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,EAAE,GAAG,SAAS,CAAC;IAEpD;;;OAGG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpE;;;;OAIG;IACH,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtD;;;OAGG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7C;;;OAGG;IACH,SAAS,IAAI,EAAE,EAAE,CAAC;IAElB;;;OAGG;IACH,cAAc,IAAI,MAAM,EAAE,CAAC;IAE3B;;;OAGG;IACH,kBAAkB,IAAI,MAAM,EAAE,CAAC;IAE/B;;;OAGG;IACH,gBAAgB,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,CAAC;IAExD;;;;OAIG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;CAC9D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tx_pool_test_suite.d.ts","sourceRoot":"","sources":["../../../src/mem_pools/tx_pool/tx_pool_test_suite.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tx_pool_test_suite.d.ts","sourceRoot":"","sources":["../../../src/mem_pools/tx_pool/tx_pool_test_suite.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C;;;GAGG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,MAAM,QAmHrD"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { mockTx } from '@aztec/circuit-types';
|
|
2
|
+
import { GasFees } from '@aztec/circuits.js';
|
|
3
|
+
import { unfreeze } from '@aztec/foundation/types';
|
|
2
4
|
/**
|
|
3
5
|
* Tests a TxPool implementation.
|
|
4
6
|
* @param getTxPool - Gets a fresh TxPool
|
|
@@ -51,10 +53,10 @@ export function describeTxPool(getTxPool) {
|
|
|
51
53
|
await pool.addTxs([tx1]);
|
|
52
54
|
// this peer knows that tx2 was mined, but it does not have the tx object
|
|
53
55
|
await pool.markAsMined([tx1.getTxHash(), someTxHashThatThisPeerDidNotSee], 1);
|
|
54
|
-
expect(pool.getMinedTxHashes()).toEqual([
|
|
56
|
+
expect(new Set(pool.getMinedTxHashes())).toEqual(new Set([
|
|
55
57
|
[tx1.getTxHash(), 1],
|
|
56
58
|
[someTxHashThatThisPeerDidNotSee, 1],
|
|
57
|
-
]);
|
|
59
|
+
]));
|
|
58
60
|
// reorg: both txs should now become available again
|
|
59
61
|
await pool.markMinedAsPending([tx1.getTxHash(), someTxHashThatThisPeerDidNotSee]);
|
|
60
62
|
expect(pool.getMinedTxHashes()).toEqual([]);
|
|
@@ -78,5 +80,19 @@ export function describeTxPool(getTxPool) {
|
|
|
78
80
|
expect(poolTxHashes).toHaveLength(3);
|
|
79
81
|
expect(poolTxHashes).toEqual(expect.arrayContaining([tx1.getTxHash(), tx2.getTxHash(), tx3.getTxHash()]));
|
|
80
82
|
});
|
|
83
|
+
it('Returns pending tx hashes sorted by priority', async () => {
|
|
84
|
+
const withPriorityFee = (tx, fee) => {
|
|
85
|
+
unfreeze(tx.data.constants.txContext.gasSettings).maxPriorityFeesPerGas = new GasFees(fee, fee);
|
|
86
|
+
return tx;
|
|
87
|
+
};
|
|
88
|
+
const tx1 = withPriorityFee(mockTx(0), 1000);
|
|
89
|
+
const tx2 = withPriorityFee(mockTx(1), 100);
|
|
90
|
+
const tx3 = withPriorityFee(mockTx(2), 200);
|
|
91
|
+
const tx4 = withPriorityFee(mockTx(3), 3000);
|
|
92
|
+
await pool.addTxs([tx1, tx2, tx3, tx4]);
|
|
93
|
+
const poolTxHashes = pool.getPendingTxHashes();
|
|
94
|
+
expect(poolTxHashes).toHaveLength(4);
|
|
95
|
+
expect(poolTxHashes).toEqual([tx4, tx1, tx3, tx2].map(tx => tx.getTxHash()));
|
|
96
|
+
});
|
|
81
97
|
}
|
|
82
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhfcG9vbF90ZXN0X3N1aXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL21lbV9wb29scy90eF9wb29sL3R4X3Bvb2xfdGVzdF9zdWl0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVcsTUFBTSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUluRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsY0FBYyxDQUFDLFNBQXVCO0lBQ3BELElBQUksSUFBWSxDQUFDO0lBRWpCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7UUFDZCxJQUFJLEdBQUcsU0FBUyxFQUFFLENBQUM7SUFDckIsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMsaUNBQWlDLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDL0MsTUFBTSxHQUFHLEdBQUcsTUFBTSxFQUFFLENBQUM7UUFFckIsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUN6QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ2pELE1BQU0sQ0FBQyxNQUFPLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDckQsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDN0QsTUFBTSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMs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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mocks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,6BAA6B,EAClC,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,EAAE,EACP,KAAK,sBAAsB,EAC5B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGrD,OAAO,EAAE,KAAK,eAAe,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mocks/index.ts"],"names":[],"mappings":"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"}
|