@aztec/p2p 0.75.0-commit.c03ba01a2a4122e43e90d5133ba017e54b90e9d2 → 0.76.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/bootstrap/bootstrap.d.ts +38 -0
- package/dest/bootstrap/bootstrap.d.ts.map +1 -0
- package/dest/bootstrap/bootstrap.js +31 -38
- package/dest/client/factory.d.ts +21 -0
- package/dest/client/factory.d.ts.map +1 -0
- package/dest/client/factory.js +13 -11
- package/dest/client/index.d.ts +3 -0
- package/dest/client/index.d.ts.map +1 -0
- package/dest/client/index.js +1 -0
- package/dest/client/p2p_client.d.ts +332 -0
- package/dest/client/p2p_client.d.ts.map +1 -0
- package/dest/client/p2p_client.js +535 -513
- package/dest/config.d.ts +187 -0
- package/dest/config.d.ts.map +1 -0
- package/dest/config.js +64 -53
- package/dest/errors/reqresp.error.d.ts +28 -0
- package/dest/errors/reqresp.error.d.ts.map +1 -0
- package/dest/errors/reqresp.error.js +10 -6
- package/dest/index.d.ts +9 -0
- package/dest/index.d.ts.map +1 -0
- package/dest/index.js +1 -0
- package/dest/mem_pools/attestation_pool/attestation_pool.d.ts +57 -0
- package/dest/mem_pools/attestation_pool/attestation_pool.d.ts.map +1 -0
- package/dest/mem_pools/attestation_pool/attestation_pool.js +2 -6
- package/dest/mem_pools/attestation_pool/attestation_pool_test_suite.d.ts +3 -0
- package/dest/mem_pools/attestation_pool/attestation_pool_test_suite.d.ts.map +1 -0
- package/dest/mem_pools/attestation_pool/attestation_pool_test_suite.js +32 -64
- package/dest/mem_pools/attestation_pool/index.d.ts +3 -0
- package/dest/mem_pools/attestation_pool/index.d.ts.map +1 -0
- package/dest/mem_pools/attestation_pool/index.js +1 -0
- package/dest/mem_pools/attestation_pool/kv_attestation_pool.d.ts +22 -0
- package/dest/mem_pools/attestation_pool/kv_attestation_pool.d.ts.map +1 -0
- package/dest/mem_pools/attestation_pool/kv_attestation_pool.js +19 -22
- package/dest/mem_pools/attestation_pool/memory_attestation_pool.d.ts +17 -0
- package/dest/mem_pools/attestation_pool/memory_attestation_pool.d.ts.map +1 -0
- package/dest/mem_pools/attestation_pool/memory_attestation_pool.js +26 -22
- package/dest/mem_pools/attestation_pool/mocks.d.ts +18 -0
- package/dest/mem_pools/attestation_pool/mocks.d.ts.map +1 -0
- package/dest/mem_pools/attestation_pool/mocks.js +6 -10
- package/dest/mem_pools/epoch_proof_quote_pool/epoch_proof_quote_pool.d.ts +7 -0
- package/dest/mem_pools/epoch_proof_quote_pool/epoch_proof_quote_pool.d.ts.map +1 -0
- package/dest/mem_pools/epoch_proof_quote_pool/epoch_proof_quote_pool.js +2 -1
- package/dest/mem_pools/epoch_proof_quote_pool/index.d.ts +4 -0
- package/dest/mem_pools/epoch_proof_quote_pool/index.d.ts.map +1 -0
- package/dest/mem_pools/epoch_proof_quote_pool/index.js +1 -0
- package/dest/mem_pools/epoch_proof_quote_pool/memory_epoch_proof_quote_pool.d.ts +12 -0
- package/dest/mem_pools/epoch_proof_quote_pool/memory_epoch_proof_quote_pool.d.ts.map +1 -0
- package/dest/mem_pools/epoch_proof_quote_pool/memory_epoch_proof_quote_pool.js +4 -5
- package/dest/mem_pools/epoch_proof_quote_pool/test_utils.d.ts +8 -0
- package/dest/mem_pools/epoch_proof_quote_pool/test_utils.d.ts.map +1 -0
- package/dest/mem_pools/epoch_proof_quote_pool/test_utils.js +3 -2
- package/dest/mem_pools/index.d.ts +5 -0
- package/dest/mem_pools/index.d.ts.map +1 -0
- package/dest/mem_pools/index.js +2 -1
- package/dest/mem_pools/instrumentation.d.ts +31 -0
- package/dest/mem_pools/instrumentation.d.ts.map +1 -0
- package/dest/mem_pools/instrumentation.js +42 -37
- package/dest/mem_pools/interface.d.ts +13 -0
- package/dest/mem_pools/interface.d.ts.map +1 -0
- package/dest/mem_pools/interface.js +2 -3
- package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.d.ts +66 -0
- package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.d.ts.map +1 -0
- package/dest/mem_pools/tx_pool/aztec_kv_tx_pool.js +134 -127
- package/dest/mem_pools/tx_pool/index.d.ts +4 -0
- package/dest/mem_pools/tx_pool/index.d.ts.map +1 -0
- package/dest/mem_pools/tx_pool/index.js +1 -0
- package/dest/mem_pools/tx_pool/memory_tx_pool.d.ts +56 -0
- package/dest/mem_pools/tx_pool/memory_tx_pool.d.ts.map +1 -0
- package/dest/mem_pools/tx_pool/memory_tx_pool.js +43 -45
- 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 +3 -1
- package/dest/mem_pools/tx_pool/tx_pool.d.ts +66 -0
- package/dest/mem_pools/tx_pool/tx_pool.d.ts.map +1 -0
- package/dest/mem_pools/tx_pool/tx_pool.js +2 -3
- package/dest/mem_pools/tx_pool/tx_pool_test_suite.d.ts +7 -0
- package/dest/mem_pools/tx_pool/tx_pool_test_suite.d.ts.map +1 -0
- package/dest/mem_pools/tx_pool/tx_pool_test_suite.js +37 -107
- package/dest/msg_validators/attestation_validator/attestation_validator.d.ts +8 -0
- package/dest/msg_validators/attestation_validator/attestation_validator.d.ts.map +1 -0
- package/dest/msg_validators/attestation_validator/attestation_validator.js +3 -3
- package/dest/msg_validators/attestation_validator/index.d.ts +2 -0
- package/dest/msg_validators/attestation_validator/index.d.ts.map +1 -0
- package/dest/msg_validators/attestation_validator/index.js +1 -0
- package/dest/msg_validators/block_proposal_validator/block_proposal_validator.d.ts +8 -0
- package/dest/msg_validators/block_proposal_validator/block_proposal_validator.d.ts.map +1 -0
- package/dest/msg_validators/block_proposal_validator/block_proposal_validator.js +2 -2
- package/dest/msg_validators/block_proposal_validator/index.d.ts +2 -0
- package/dest/msg_validators/block_proposal_validator/index.d.ts.map +1 -0
- package/dest/msg_validators/block_proposal_validator/index.js +1 -0
- package/dest/msg_validators/epoch_proof_quote_validator/epoch_proof_quote_validator.d.ts +8 -0
- package/dest/msg_validators/epoch_proof_quote_validator/epoch_proof_quote_validator.d.ts.map +1 -0
- package/dest/msg_validators/epoch_proof_quote_validator/epoch_proof_quote_validator.js +2 -2
- package/dest/msg_validators/epoch_proof_quote_validator/index.d.ts +2 -0
- package/dest/msg_validators/epoch_proof_quote_validator/index.d.ts.map +1 -0
- package/dest/msg_validators/epoch_proof_quote_validator/index.js +1 -0
- package/dest/msg_validators/index.d.ts +4 -0
- package/dest/msg_validators/index.d.ts.map +1 -0
- package/dest/msg_validators/index.js +1 -0
- package/dest/msg_validators/tx_validator/aggregate_tx_validator.d.ts +7 -0
- package/dest/msg_validators/tx_validator/aggregate_tx_validator.d.ts.map +1 -0
- package/dest/msg_validators/tx_validator/aggregate_tx_validator.js +11 -9
- 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 +12 -17
- package/dest/msg_validators/tx_validator/data_validator.d.ts +6 -0
- package/dest/msg_validators/tx_validator/data_validator.d.ts.map +1 -0
- package/dest/msg_validators/tx_validator/data_validator.js +32 -41
- package/dest/msg_validators/tx_validator/double_spend_validator.d.ts +12 -0
- package/dest/msg_validators/tx_validator/double_spend_validator.d.ts.map +1 -0
- package/dest/msg_validators/tx_validator/double_spend_validator.js +14 -22
- package/dest/msg_validators/tx_validator/index.d.ts +7 -0
- package/dest/msg_validators/tx_validator/index.d.ts.map +1 -0
- package/dest/msg_validators/tx_validator/index.js +1 -0
- package/dest/msg_validators/tx_validator/metadata_validator.d.ts +10 -0
- package/dest/msg_validators/tx_validator/metadata_validator.d.ts.map +1 -0
- package/dest/msg_validators/tx_validator/metadata_validator.js +26 -29
- package/dest/msg_validators/tx_validator/tx_proof_validator.d.ts +8 -0
- package/dest/msg_validators/tx_validator/tx_proof_validator.d.ts.map +1 -0
- package/dest/msg_validators/tx_validator/tx_proof_validator.js +12 -17
- package/dest/services/data_store.d.ts +27 -0
- package/dest/services/data_store.d.ts.map +1 -0
- package/dest/services/data_store.js +57 -57
- package/dest/services/discv5/discV5_service.d.ts +40 -0
- package/dest/services/discv5/discV5_service.d.ts.map +1 -0
- package/dest/services/discv5/discV5_service.js +82 -43
- package/dest/services/dummy_service.d.ts +83 -0
- package/dest/services/dummy_service.d.ts.map +1 -0
- package/dest/services/dummy_service.js +59 -40
- package/dest/services/encoding.d.ts +31 -0
- package/dest/services/encoding.d.ts.map +1 -0
- package/dest/services/encoding.js +9 -10
- package/dest/services/index.d.ts +3 -0
- package/dest/services/index.d.ts.map +1 -0
- package/dest/services/index.js +1 -0
- package/dest/services/libp2p/libp2p_logger.d.ts +7 -0
- package/dest/services/libp2p/libp2p_logger.d.ts.map +1 -0
- package/dest/services/libp2p/libp2p_logger.js +67 -0
- package/dest/services/libp2p/libp2p_service.d.ts +225 -0
- package/dest/services/libp2p/libp2p_service.d.ts.map +1 -0
- package/dest/services/libp2p/libp2p_service.js +727 -709
- package/dest/services/peer-manager/metrics.d.ts +12 -0
- package/dest/services/peer-manager/metrics.d.ts.map +1 -0
- package/dest/services/peer-manager/metrics.js +7 -14
- package/dest/services/peer-manager/peer_manager.d.ts +76 -0
- package/dest/services/peer-manager/peer_manager.d.ts.map +1 -0
- package/dest/services/peer-manager/peer_manager.js +342 -340
- package/dest/services/peer-manager/peer_scoring.d.ts +28 -0
- package/dest/services/peer-manager/peer_scoring.d.ts.map +1 -0
- package/dest/services/peer-manager/peer_scoring.js +18 -20
- package/dest/services/reqresp/config.d.ts +16 -0
- package/dest/services/reqresp/config.d.ts.map +1 -0
- package/dest/services/reqresp/config.js +5 -4
- package/dest/services/reqresp/connection-sampler/batch_connection_sampler.d.ts +45 -0
- package/dest/services/reqresp/connection-sampler/batch_connection_sampler.d.ts.map +1 -0
- package/dest/services/reqresp/connection-sampler/batch_connection_sampler.js +28 -35
- package/dest/services/reqresp/connection-sampler/connection_sampler.d.ts +61 -0
- package/dest/services/reqresp/connection-sampler/connection_sampler.d.ts.map +1 -0
- package/dest/services/reqresp/connection-sampler/connection_sampler.js +59 -60
- package/dest/services/reqresp/index.d.ts +6 -0
- package/dest/services/reqresp/index.d.ts.map +1 -0
- package/dest/services/reqresp/index.js +3 -1
- package/dest/services/reqresp/interface.d.ts +116 -0
- package/dest/services/reqresp/interface.d.ts.map +1 -0
- package/dest/services/reqresp/interface.js +30 -25
- package/dest/services/reqresp/metrics.d.ts +15 -0
- package/dest/services/reqresp/metrics.d.ts.map +1 -0
- package/dest/services/reqresp/metrics.js +10 -23
- package/dest/services/reqresp/protocols/block.d.ts +4 -0
- package/dest/services/reqresp/protocols/block.d.ts.map +1 -0
- package/dest/services/reqresp/protocols/block.js +2 -1
- package/dest/services/reqresp/protocols/goodbye.d.ts +51 -0
- package/dest/services/reqresp/protocols/goodbye.d.ts.map +1 -0
- package/dest/services/reqresp/protocols/goodbye.js +41 -36
- package/dest/services/reqresp/protocols/index.d.ts +9 -0
- package/dest/services/reqresp/protocols/index.d.ts.map +1 -0
- package/dest/services/reqresp/protocols/index.js +3 -1
- package/dest/services/reqresp/protocols/ping.d.ts +9 -0
- package/dest/services/reqresp/protocols/ping.d.ts.map +1 -0
- package/dest/services/reqresp/protocols/ping.js +3 -1
- package/dest/services/reqresp/protocols/status.d.ts +9 -0
- package/dest/services/reqresp/protocols/status.d.ts.map +1 -0
- package/dest/services/reqresp/protocols/status.js +3 -1
- package/dest/services/reqresp/protocols/tx.d.ts +13 -0
- package/dest/services/reqresp/protocols/tx.d.ts.map +1 -0
- package/dest/services/reqresp/protocols/tx.js +8 -5
- package/dest/services/reqresp/rate-limiter/index.d.ts +2 -0
- package/dest/services/reqresp/rate-limiter/index.d.ts.map +1 -0
- package/dest/services/reqresp/rate-limiter/index.js +1 -0
- package/dest/services/reqresp/rate-limiter/rate_limiter.d.ts +102 -0
- package/dest/services/reqresp/rate-limiter/rate_limiter.d.ts.map +1 -0
- package/dest/services/reqresp/rate-limiter/rate_limiter.js +35 -39
- package/dest/services/reqresp/rate-limiter/rate_limits.d.ts +3 -0
- package/dest/services/reqresp/rate-limiter/rate_limits.d.ts.map +1 -0
- package/dest/services/reqresp/rate-limiter/rate_limits.js +17 -16
- package/dest/services/reqresp/reqresp.d.ts +166 -0
- package/dest/services/reqresp/reqresp.d.ts.map +1 -0
- package/dest/services/reqresp/reqresp.js +463 -460
- package/dest/services/reqresp/status.d.ts +31 -0
- package/dest/services/reqresp/status.d.ts.map +1 -0
- package/dest/services/reqresp/status.js +17 -16
- package/dest/services/service.d.ts +86 -0
- package/dest/services/service.d.ts.map +1 -0
- package/dest/services/service.js +4 -3
- package/dest/services/types.d.ts +32 -0
- package/dest/services/types.d.ts.map +1 -0
- package/dest/services/types.js +19 -20
- package/dest/test-helpers/generate-peer-id-private-keys.d.ts +7 -0
- package/dest/test-helpers/generate-peer-id-private-keys.d.ts.map +1 -0
- package/dest/test-helpers/generate-peer-id-private-keys.js +15 -0
- package/dest/test-helpers/get-ports.d.ts +7 -0
- package/dest/test-helpers/get-ports.d.ts.map +1 -0
- package/dest/test-helpers/get-ports.js +8 -0
- package/dest/test-helpers/index.d.ts +6 -0
- package/dest/test-helpers/index.d.ts.map +1 -0
- package/dest/test-helpers/index.js +6 -0
- package/dest/test-helpers/make-enrs.d.ts +16 -0
- package/dest/test-helpers/make-enrs.d.ts.map +1 -0
- package/dest/test-helpers/make-enrs.js +35 -0
- package/dest/test-helpers/make-test-p2p-clients.d.ts +37 -0
- package/dest/test-helpers/make-test-p2p-clients.d.ts.map +1 -0
- package/dest/test-helpers/make-test-p2p-clients.js +71 -0
- package/dest/test-helpers/reqresp-nodes.d.ts +55 -0
- package/dest/test-helpers/reqresp-nodes.d.ts.map +1 -0
- package/dest/test-helpers/reqresp-nodes.js +183 -0
- package/dest/testbench/p2p_client_testbench_worker.d.ts +2 -0
- package/dest/testbench/p2p_client_testbench_worker.d.ts.map +1 -0
- package/dest/testbench/p2p_client_testbench_worker.js +125 -0
- package/dest/util.d.ts +53 -0
- package/dest/util.d.ts.map +1 -0
- package/dest/util.js +34 -23
- package/dest/versioning.d.ts +12 -0
- package/dest/versioning.d.ts.map +1 -0
- package/dest/versioning.js +38 -0
- package/package.json +11 -9
- package/src/bootstrap/bootstrap.ts +9 -3
- package/src/client/factory.ts +12 -5
- package/src/config.ts +56 -29
- package/src/mem_pools/index.ts +3 -3
- package/src/mem_pools/instrumentation.ts +2 -3
- package/src/msg_validators/attestation_validator/attestation_validator.ts +3 -3
- package/src/msg_validators/block_proposal_validator/block_proposal_validator.ts +3 -3
- package/src/msg_validators/epoch_proof_quote_validator/epoch_proof_quote_validator.ts +3 -3
- package/src/services/discv5/discV5_service.ts +67 -18
- package/src/services/dummy_service.ts +2 -0
- package/src/services/libp2p/libp2p_logger.ts +78 -0
- package/src/services/libp2p/libp2p_service.ts +47 -10
- package/src/services/reqresp/protocols/goodbye.ts +1 -1
- package/src/services/reqresp/reqresp.ts +9 -1
- package/src/services/service.ts +2 -0
- package/src/services/types.ts +2 -10
- package/src/test-helpers/generate-peer-id-private-keys.ts +15 -0
- package/src/test-helpers/get-ports.ts +8 -0
- package/src/test-helpers/index.ts +5 -0
- package/src/test-helpers/make-enrs.ts +44 -0
- package/src/test-helpers/make-test-p2p-clients.ts +124 -0
- package/src/{mocks/index.ts → test-helpers/reqresp-nodes.ts} +10 -5
- package/src/testbench/README.md +20 -0
- package/src/testbench/p2p_client_testbench_worker.ts +156 -0
- package/src/testbench/scripts/run_testbench.sh +7 -0
- package/src/versioning.ts +50 -0
- package/dest/mocks/index.js +0 -190
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
var _AztecKVTxPool_store, _AztecKVTxPool_txs, _AztecKVTxPool_minedTxHashToBlock, _AztecKVTxPool_pendingTxPriorityToHash, _AztecKVTxPool_archive, _AztecKVTxPool_archivedTxs, _AztecKVTxPool_archivedTxIndices, _AztecKVTxPool_archivedTxLimit, _AztecKVTxPool_log, _AztecKVTxPool_metrics;
|
|
2
|
+
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
1
3
|
import { Tx, TxHash } from '@aztec/circuit-types';
|
|
2
4
|
import { ClientIvcProof } from '@aztec/circuits.js';
|
|
3
5
|
import { toArray } from '@aztec/foundation/iterable';
|
|
@@ -7,54 +9,63 @@ import { PoolInstrumentation, PoolName } from '../instrumentation.js';
|
|
|
7
9
|
import { getPendingTxPriority } from './priority.js';
|
|
8
10
|
/**
|
|
9
11
|
* KV implementation of the Transaction Pool.
|
|
10
|
-
*/
|
|
11
|
-
|
|
12
|
-
/** Our tx pool, stored as a Map, with K: tx hash and V: the transaction. */ #txs;
|
|
13
|
-
/** Index from tx hash to the block number in which they were mined, filtered by mined txs. */ #minedTxHashToBlock;
|
|
14
|
-
/** Index from tx priority (stored as hex) to its tx hash, filtered by pending txs. */ #pendingTxPriorityToHash;
|
|
15
|
-
/** KV store for archived txs. */ #archive;
|
|
16
|
-
/** Archived txs map for future lookup. */ #archivedTxs;
|
|
17
|
-
/** Indexes of the archived txs by insertion order. */ #archivedTxIndices;
|
|
18
|
-
/** Number of txs to archive. */ #archivedTxLimit;
|
|
19
|
-
#log;
|
|
20
|
-
#metrics;
|
|
12
|
+
*/
|
|
13
|
+
export class AztecKVTxPool {
|
|
21
14
|
/**
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
this
|
|
31
|
-
|
|
32
|
-
this
|
|
33
|
-
|
|
34
|
-
this
|
|
35
|
-
|
|
36
|
-
this
|
|
37
|
-
|
|
38
|
-
this
|
|
15
|
+
* Class constructor for KV TxPool. Initiates our transaction pool as an AztecMap.
|
|
16
|
+
* @param store - A KV store for live txs in the pool.
|
|
17
|
+
* @param archive - A KV store for archived txs.
|
|
18
|
+
* @param telemetry - A telemetry client.
|
|
19
|
+
* @param archivedTxLimit - The number of txs to archive.
|
|
20
|
+
* @param log - A logger.
|
|
21
|
+
*/
|
|
22
|
+
constructor(store, archive, telemetry = getTelemetryClient(), archivedTxLimit = 0, log = createLogger('p2p:tx_pool')) {
|
|
23
|
+
_AztecKVTxPool_store.set(this, void 0);
|
|
24
|
+
/** Our tx pool, stored as a Map, with K: tx hash and V: the transaction. */
|
|
25
|
+
_AztecKVTxPool_txs.set(this, void 0);
|
|
26
|
+
/** Index from tx hash to the block number in which they were mined, filtered by mined txs. */
|
|
27
|
+
_AztecKVTxPool_minedTxHashToBlock.set(this, void 0);
|
|
28
|
+
/** Index from tx priority (stored as hex) to its tx hash, filtered by pending txs. */
|
|
29
|
+
_AztecKVTxPool_pendingTxPriorityToHash.set(this, void 0);
|
|
30
|
+
/** KV store for archived txs. */
|
|
31
|
+
_AztecKVTxPool_archive.set(this, void 0);
|
|
32
|
+
/** Archived txs map for future lookup. */
|
|
33
|
+
_AztecKVTxPool_archivedTxs.set(this, void 0);
|
|
34
|
+
/** Indexes of the archived txs by insertion order. */
|
|
35
|
+
_AztecKVTxPool_archivedTxIndices.set(this, void 0);
|
|
36
|
+
/** Number of txs to archive. */
|
|
37
|
+
_AztecKVTxPool_archivedTxLimit.set(this, void 0);
|
|
38
|
+
_AztecKVTxPool_log.set(this, void 0);
|
|
39
|
+
_AztecKVTxPool_metrics.set(this, void 0);
|
|
40
|
+
__classPrivateFieldSet(this, _AztecKVTxPool_txs, store.openMap('txs'), "f");
|
|
41
|
+
__classPrivateFieldSet(this, _AztecKVTxPool_minedTxHashToBlock, store.openMap('txHashToBlockMined'), "f");
|
|
42
|
+
__classPrivateFieldSet(this, _AztecKVTxPool_pendingTxPriorityToHash, store.openMultiMap('pendingTxFeeToHash'), "f");
|
|
43
|
+
__classPrivateFieldSet(this, _AztecKVTxPool_archivedTxs, archive.openMap('archivedTxs'), "f");
|
|
44
|
+
__classPrivateFieldSet(this, _AztecKVTxPool_archivedTxIndices, archive.openMap('archivedTxIndices'), "f");
|
|
45
|
+
__classPrivateFieldSet(this, _AztecKVTxPool_archivedTxLimit, archivedTxLimit, "f");
|
|
46
|
+
__classPrivateFieldSet(this, _AztecKVTxPool_store, store, "f");
|
|
47
|
+
__classPrivateFieldSet(this, _AztecKVTxPool_archive, archive, "f");
|
|
48
|
+
__classPrivateFieldSet(this, _AztecKVTxPool_log, log, "f");
|
|
49
|
+
__classPrivateFieldSet(this, _AztecKVTxPool_metrics, new PoolInstrumentation(telemetry, PoolName.TX_POOL, () => store.estimateSize()), "f");
|
|
39
50
|
}
|
|
40
51
|
markAsMined(txHashes, blockNumber) {
|
|
41
52
|
if (txHashes.length === 0) {
|
|
42
53
|
return Promise.resolve();
|
|
43
54
|
}
|
|
44
55
|
let deletedPending = 0;
|
|
45
|
-
return this
|
|
46
|
-
for (const hash of txHashes){
|
|
56
|
+
return __classPrivateFieldGet(this, _AztecKVTxPool_store, "f").transactionAsync(async () => {
|
|
57
|
+
for (const hash of txHashes) {
|
|
47
58
|
const key = hash.toString();
|
|
48
|
-
await this
|
|
59
|
+
await __classPrivateFieldGet(this, _AztecKVTxPool_minedTxHashToBlock, "f").set(key, blockNumber);
|
|
49
60
|
const tx = await this.getTxByHash(hash);
|
|
50
61
|
if (tx) {
|
|
51
62
|
deletedPending++;
|
|
52
63
|
const fee = getPendingTxPriority(tx);
|
|
53
|
-
await this
|
|
64
|
+
await __classPrivateFieldGet(this, _AztecKVTxPool_pendingTxPriorityToHash, "f").deleteValue(fee, key);
|
|
54
65
|
}
|
|
55
66
|
}
|
|
56
|
-
this
|
|
57
|
-
this
|
|
67
|
+
__classPrivateFieldGet(this, _AztecKVTxPool_metrics, "f").recordAddedObjects(txHashes.length, 'mined');
|
|
68
|
+
__classPrivateFieldGet(this, _AztecKVTxPool_metrics, "f").recordRemovedObjects(deletedPending, 'pending');
|
|
58
69
|
});
|
|
59
70
|
}
|
|
60
71
|
markMinedAsPending(txHashes) {
|
|
@@ -62,53 +73,48 @@ import { getPendingTxPriority } from './priority.js';
|
|
|
62
73
|
return Promise.resolve();
|
|
63
74
|
}
|
|
64
75
|
let markedAsPending = 0;
|
|
65
|
-
return this
|
|
66
|
-
for (const hash of txHashes){
|
|
76
|
+
return __classPrivateFieldGet(this, _AztecKVTxPool_store, "f").transactionAsync(async () => {
|
|
77
|
+
for (const hash of txHashes) {
|
|
67
78
|
const key = hash.toString();
|
|
68
|
-
await this
|
|
79
|
+
await __classPrivateFieldGet(this, _AztecKVTxPool_minedTxHashToBlock, "f").delete(key);
|
|
69
80
|
const tx = await this.getTxByHash(hash);
|
|
70
81
|
if (tx) {
|
|
71
|
-
await this
|
|
82
|
+
await __classPrivateFieldGet(this, _AztecKVTxPool_pendingTxPriorityToHash, "f").set(getPendingTxPriority(tx), key);
|
|
72
83
|
markedAsPending++;
|
|
73
84
|
}
|
|
74
85
|
}
|
|
75
|
-
this
|
|
76
|
-
this
|
|
86
|
+
__classPrivateFieldGet(this, _AztecKVTxPool_metrics, "f").recordAddedObjects(markedAsPending, 'pending');
|
|
87
|
+
__classPrivateFieldGet(this, _AztecKVTxPool_metrics, "f").recordRemovedObjects(markedAsPending, 'mined');
|
|
77
88
|
});
|
|
78
89
|
}
|
|
79
90
|
async getPendingTxHashes() {
|
|
80
|
-
const vals = await toArray(this
|
|
81
|
-
|
|
82
|
-
}));
|
|
83
|
-
return vals.map((x)=>TxHash.fromString(x));
|
|
91
|
+
const vals = await toArray(__classPrivateFieldGet(this, _AztecKVTxPool_pendingTxPriorityToHash, "f").valuesAsync({ reverse: true }));
|
|
92
|
+
return vals.map(x => TxHash.fromString(x));
|
|
84
93
|
}
|
|
85
94
|
async getMinedTxHashes() {
|
|
86
|
-
const vals = await toArray(this
|
|
87
|
-
return vals.map(([txHash, blockNumber])=>[
|
|
88
|
-
TxHash.fromString(txHash),
|
|
89
|
-
blockNumber
|
|
90
|
-
]);
|
|
95
|
+
const vals = await toArray(__classPrivateFieldGet(this, _AztecKVTxPool_minedTxHashToBlock, "f").entriesAsync());
|
|
96
|
+
return vals.map(([txHash, blockNumber]) => [TxHash.fromString(txHash), blockNumber]);
|
|
91
97
|
}
|
|
92
98
|
async getTxStatus(txHash) {
|
|
93
99
|
const key = txHash.toString();
|
|
94
|
-
const [isMined, isKnown] = await Promise.all([
|
|
95
|
-
this.#minedTxHashToBlock.hasAsync(key),
|
|
96
|
-
this.#txs.hasAsync(key)
|
|
97
|
-
]);
|
|
100
|
+
const [isMined, isKnown] = await Promise.all([__classPrivateFieldGet(this, _AztecKVTxPool_minedTxHashToBlock, "f").hasAsync(key), __classPrivateFieldGet(this, _AztecKVTxPool_txs, "f").hasAsync(key)]);
|
|
98
101
|
if (isMined) {
|
|
99
102
|
return 'mined';
|
|
100
|
-
}
|
|
103
|
+
}
|
|
104
|
+
else if (isKnown) {
|
|
101
105
|
return 'pending';
|
|
102
|
-
}
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
103
108
|
return undefined;
|
|
104
109
|
}
|
|
105
110
|
}
|
|
106
111
|
/**
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
+
* Checks if a transaction exists in the pool and returns it.
|
|
113
|
+
* @param txHash - The generated tx hash.
|
|
114
|
+
* @returns The transaction, if found, 'undefined' otherwise.
|
|
115
|
+
*/
|
|
116
|
+
async getTxByHash(txHash) {
|
|
117
|
+
const buffer = await __classPrivateFieldGet(this, _AztecKVTxPool_txs, "f").getAsync(txHash.toString());
|
|
112
118
|
if (buffer) {
|
|
113
119
|
const tx = Tx.fromBuffer(buffer);
|
|
114
120
|
tx.setTxHash(txHash);
|
|
@@ -117,11 +123,12 @@ import { getPendingTxPriority } from './priority.js';
|
|
|
117
123
|
return undefined;
|
|
118
124
|
}
|
|
119
125
|
/**
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
126
|
+
* Checks if an archived tx exists and returns it.
|
|
127
|
+
* @param txHash - The tx hash.
|
|
128
|
+
* @returns The transaction metadata, if found, 'undefined' otherwise.
|
|
129
|
+
*/
|
|
130
|
+
async getArchivedTxByHash(txHash) {
|
|
131
|
+
const buffer = await __classPrivateFieldGet(this, _AztecKVTxPool_archivedTxs, "f").getAsync(txHash.toString());
|
|
125
132
|
if (buffer) {
|
|
126
133
|
const tx = Tx.fromBuffer(buffer);
|
|
127
134
|
tx.setTxHash(txHash);
|
|
@@ -130,116 +137,116 @@ import { getPendingTxPriority } from './priority.js';
|
|
|
130
137
|
return undefined;
|
|
131
138
|
}
|
|
132
139
|
/**
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
})));
|
|
141
|
-
await this.#store.transactionAsync(async ()=>{
|
|
140
|
+
* Adds a list of transactions to the pool. Duplicates are ignored.
|
|
141
|
+
* @param txs - An array of txs to be added to the pool.
|
|
142
|
+
* @returns Empty promise.
|
|
143
|
+
*/
|
|
144
|
+
async addTxs(txs) {
|
|
145
|
+
const hashesAndStats = await Promise.all(txs.map(async (tx) => ({ txHash: await tx.getTxHash(), txStats: await tx.getStats() })));
|
|
146
|
+
await __classPrivateFieldGet(this, _AztecKVTxPool_store, "f").transactionAsync(async () => {
|
|
142
147
|
let pendingCount = 0;
|
|
143
|
-
await Promise.all(txs.map(async (tx, i)=>{
|
|
148
|
+
await Promise.all(txs.map(async (tx, i) => {
|
|
144
149
|
const { txHash, txStats } = hashesAndStats[i];
|
|
145
|
-
this
|
|
150
|
+
__classPrivateFieldGet(this, _AztecKVTxPool_log, "f").verbose(`Adding tx ${txHash.toString()} to pool`, {
|
|
146
151
|
eventName: 'tx-added-to-pool',
|
|
147
|
-
...txStats
|
|
152
|
+
...txStats,
|
|
148
153
|
});
|
|
149
154
|
const key = txHash.toString();
|
|
150
|
-
await this
|
|
151
|
-
if (!await this
|
|
155
|
+
await __classPrivateFieldGet(this, _AztecKVTxPool_txs, "f").set(key, tx.toBuffer());
|
|
156
|
+
if (!(await __classPrivateFieldGet(this, _AztecKVTxPool_minedTxHashToBlock, "f").hasAsync(key))) {
|
|
152
157
|
pendingCount++;
|
|
153
158
|
// REFACTOR: Use an lmdb conditional write to avoid race conditions with this write tx
|
|
154
|
-
await this
|
|
155
|
-
this
|
|
159
|
+
await __classPrivateFieldGet(this, _AztecKVTxPool_pendingTxPriorityToHash, "f").set(getPendingTxPriority(tx), key);
|
|
160
|
+
__classPrivateFieldGet(this, _AztecKVTxPool_metrics, "f").recordSize(tx);
|
|
156
161
|
}
|
|
157
162
|
}));
|
|
158
|
-
this
|
|
163
|
+
__classPrivateFieldGet(this, _AztecKVTxPool_metrics, "f").recordAddedObjects(pendingCount, 'pending');
|
|
159
164
|
});
|
|
160
165
|
}
|
|
161
166
|
/**
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
167
|
+
* Deletes transactions from the pool. Tx hashes that are not present are ignored.
|
|
168
|
+
* @param txHashes - An array of tx hashes to be removed from the tx pool.
|
|
169
|
+
* @returns Empty promise.
|
|
170
|
+
*/
|
|
171
|
+
deleteTxs(txHashes) {
|
|
166
172
|
let pendingDeleted = 0;
|
|
167
173
|
let minedDeleted = 0;
|
|
168
174
|
const deletedTxs = [];
|
|
169
|
-
const poolDbTx = this
|
|
170
|
-
for (const hash of txHashes){
|
|
175
|
+
const poolDbTx = __classPrivateFieldGet(this, _AztecKVTxPool_store, "f").transactionAsync(async () => {
|
|
176
|
+
for (const hash of txHashes) {
|
|
171
177
|
const key = hash.toString();
|
|
172
178
|
const tx = await this.getTxByHash(hash);
|
|
173
179
|
if (tx) {
|
|
174
180
|
const fee = getPendingTxPriority(tx);
|
|
175
|
-
await this
|
|
176
|
-
const isMined = await this
|
|
181
|
+
await __classPrivateFieldGet(this, _AztecKVTxPool_pendingTxPriorityToHash, "f").deleteValue(fee, key);
|
|
182
|
+
const isMined = await __classPrivateFieldGet(this, _AztecKVTxPool_minedTxHashToBlock, "f").hasAsync(key);
|
|
177
183
|
if (isMined) {
|
|
178
184
|
minedDeleted++;
|
|
179
|
-
}
|
|
185
|
+
}
|
|
186
|
+
else {
|
|
180
187
|
pendingDeleted++;
|
|
181
188
|
}
|
|
182
|
-
if (this
|
|
189
|
+
if (__classPrivateFieldGet(this, _AztecKVTxPool_archivedTxLimit, "f")) {
|
|
183
190
|
deletedTxs.push(tx);
|
|
184
191
|
}
|
|
185
|
-
await this
|
|
186
|
-
await this
|
|
192
|
+
await __classPrivateFieldGet(this, _AztecKVTxPool_txs, "f").delete(key);
|
|
193
|
+
await __classPrivateFieldGet(this, _AztecKVTxPool_minedTxHashToBlock, "f").delete(key);
|
|
187
194
|
}
|
|
188
195
|
}
|
|
189
|
-
this
|
|
190
|
-
this
|
|
196
|
+
__classPrivateFieldGet(this, _AztecKVTxPool_metrics, "f").recordRemovedObjects(pendingDeleted, 'pending');
|
|
197
|
+
__classPrivateFieldGet(this, _AztecKVTxPool_metrics, "f").recordRemovedObjects(minedDeleted, 'mined');
|
|
191
198
|
});
|
|
192
|
-
return this
|
|
199
|
+
return __classPrivateFieldGet(this, _AztecKVTxPool_archivedTxLimit, "f") ? poolDbTx.then(() => this.archiveTxs(deletedTxs)) : poolDbTx;
|
|
193
200
|
}
|
|
194
201
|
/**
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
202
|
+
* Gets all the transactions stored in the pool.
|
|
203
|
+
* @returns Array of tx objects in the order they were added to the pool.
|
|
204
|
+
*/
|
|
205
|
+
async getAllTxs() {
|
|
206
|
+
const vals = await toArray(__classPrivateFieldGet(this, _AztecKVTxPool_txs, "f").entriesAsync());
|
|
207
|
+
return vals.map(([hash, buffer]) => {
|
|
200
208
|
const tx = Tx.fromBuffer(buffer);
|
|
201
209
|
tx.setTxHash(TxHash.fromString(hash));
|
|
202
210
|
return tx;
|
|
203
211
|
});
|
|
204
212
|
}
|
|
205
213
|
/**
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
214
|
+
* Gets the hashes of all transactions currently in the tx pool.
|
|
215
|
+
* @returns An array of transaction hashes found in the tx pool.
|
|
216
|
+
*/
|
|
217
|
+
async getAllTxHashes() {
|
|
218
|
+
const vals = await toArray(__classPrivateFieldGet(this, _AztecKVTxPool_txs, "f").keysAsync());
|
|
219
|
+
return vals.map(x => TxHash.fromString(x));
|
|
211
220
|
}
|
|
212
221
|
/**
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
await
|
|
222
|
+
* Archives a list of txs for future reference. The number of archived txs is limited by the specified archivedTxLimit.
|
|
223
|
+
* @param txs - The list of transactions to archive.
|
|
224
|
+
* @returns Empty promise.
|
|
225
|
+
*/
|
|
226
|
+
async archiveTxs(txs) {
|
|
227
|
+
const txHashes = await Promise.all(txs.map(tx => tx.getTxHash()));
|
|
228
|
+
await __classPrivateFieldGet(this, _AztecKVTxPool_archive, "f").transactionAsync(async () => {
|
|
219
229
|
// calcualte the head and tail indices of the archived txs by insertion order.
|
|
220
|
-
let headIdx = ((await this
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
}).next()).value?.[0] ?? -1) + 1;
|
|
224
|
-
let tailIdx = (await this.#archivedTxIndices.entriesAsync({
|
|
225
|
-
limit: 1
|
|
226
|
-
}).next()).value?.[0] ?? 0;
|
|
227
|
-
for(let i = 0; i < txs.length; i++){
|
|
230
|
+
let headIdx = ((await __classPrivateFieldGet(this, _AztecKVTxPool_archivedTxIndices, "f").entriesAsync({ limit: 1, reverse: true }).next()).value?.[0] ?? -1) + 1;
|
|
231
|
+
let tailIdx = (await __classPrivateFieldGet(this, _AztecKVTxPool_archivedTxIndices, "f").entriesAsync({ limit: 1 }).next()).value?.[0] ?? 0;
|
|
232
|
+
for (let i = 0; i < txs.length; i++) {
|
|
228
233
|
const tx = txs[i];
|
|
229
|
-
while(headIdx - tailIdx >= this
|
|
230
|
-
const txHash = await this
|
|
234
|
+
while (headIdx - tailIdx >= __classPrivateFieldGet(this, _AztecKVTxPool_archivedTxLimit, "f")) {
|
|
235
|
+
const txHash = await __classPrivateFieldGet(this, _AztecKVTxPool_archivedTxIndices, "f").getAsync(tailIdx);
|
|
231
236
|
if (txHash) {
|
|
232
|
-
await this
|
|
233
|
-
await this
|
|
237
|
+
await __classPrivateFieldGet(this, _AztecKVTxPool_archivedTxs, "f").delete(txHash);
|
|
238
|
+
await __classPrivateFieldGet(this, _AztecKVTxPool_archivedTxIndices, "f").delete(tailIdx);
|
|
234
239
|
}
|
|
235
240
|
tailIdx++;
|
|
236
241
|
}
|
|
237
242
|
const archivedTx = new Tx(tx.data, ClientIvcProof.empty(), tx.contractClassLogs, tx.enqueuedPublicFunctionCalls, tx.publicTeardownFunctionCall);
|
|
238
243
|
const txHash = txHashes[i].toString();
|
|
239
|
-
await this
|
|
240
|
-
await this
|
|
244
|
+
await __classPrivateFieldGet(this, _AztecKVTxPool_archivedTxs, "f").set(txHash, archivedTx.toBuffer());
|
|
245
|
+
await __classPrivateFieldGet(this, _AztecKVTxPool_archivedTxIndices, "f").set(headIdx, txHash);
|
|
241
246
|
headIdx++;
|
|
242
247
|
}
|
|
243
248
|
});
|
|
244
249
|
}
|
|
245
250
|
}
|
|
251
|
+
_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();
|
|
252
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXp0ZWNfa3ZfdHhfcG9vbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9tZW1fcG9vbHMvdHhfcG9vbC9henRlY19rdl90eF9wb29sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVsRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3JELE9BQU8sRUFBZSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVsRSxPQUFPLEVBQXdCLGtCQUFrQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFbkYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdyRDs7R0FFRztBQUNILE1BQU0sT0FBTyxhQUFhO0lBNEJ4Qjs7Ozs7OztPQU9HO0lBQ0gsWUFDRSxLQUF3QixFQUN4QixPQUEwQixFQUMxQixZQUE2QixrQkFBa0IsRUFBRSxFQUNqRCxrQkFBMEIsQ0FBQyxFQUMzQixHQUFHLEdBQUcsWUFBWSxDQUFDLGFBQWEsQ0FBQztRQXhDbkMsdUNBQTBCO1FBRTFCLDRFQUE0RTtRQUM1RSxxQ0FBb0M7UUFFcEMsOEZBQThGO1FBQzlGLG9EQUFtRDtRQUVuRCxzRkFBc0Y7UUFDdEYseURBQTZEO1FBRTdELGlDQUFpQztRQUNqQyx5Q0FBNEI7UUFFNUIsMENBQTBDO1FBQzFDLDZDQUE0QztRQUU1QyxzREFBc0Q7UUFDdEQsbURBQWtEO1FBRWxELGdDQUFnQztRQUNoQyxpREFBeUI7UUFFekIscUNBQWE7UUFFYix5Q0FBa0M7UUFpQmhDLHVCQUFBLElBQUksc0JBQVEsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENB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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mem_pools/tx_pool/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export * from './tx_pool.js';
|
|
2
2
|
export * from './memory_tx_pool.js';
|
|
3
3
|
export * from './aztec_kv_tx_pool.js';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbWVtX3Bvb2xzL3R4X3Bvb2wvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLHVCQUF1QixDQUFDIn0=
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { Tx, TxHash } from '@aztec/circuit-types';
|
|
2
|
+
import { type TelemetryClient } from '@aztec/telemetry-client';
|
|
3
|
+
import { type TxPool } from './tx_pool.js';
|
|
4
|
+
/**
|
|
5
|
+
* In-memory implementation of the Transaction Pool.
|
|
6
|
+
*/
|
|
7
|
+
export declare class InMemoryTxPool implements TxPool {
|
|
8
|
+
private log;
|
|
9
|
+
/**
|
|
10
|
+
* Our tx pool, stored as a Map in-memory, with K: tx hash and V: the transaction.
|
|
11
|
+
*/
|
|
12
|
+
private txs;
|
|
13
|
+
private minedTxs;
|
|
14
|
+
private pendingTxs;
|
|
15
|
+
private metrics;
|
|
16
|
+
/**
|
|
17
|
+
* Class constructor for in-memory TxPool. Initiates our transaction pool as a JS Map.
|
|
18
|
+
* @param log - A logger.
|
|
19
|
+
*/
|
|
20
|
+
constructor(telemetry?: TelemetryClient, log?: import("@aztec/foundation/log").Logger);
|
|
21
|
+
markAsMined(txHashes: TxHash[], blockNumber: number): Promise<void>;
|
|
22
|
+
markMinedAsPending(txHashes: TxHash[]): Promise<void>;
|
|
23
|
+
getPendingTxHashes(): Promise<TxHash[]>;
|
|
24
|
+
getMinedTxHashes(): Promise<[TxHash, number][]>;
|
|
25
|
+
getTxStatus(txHash: TxHash): Promise<'pending' | 'mined' | undefined>;
|
|
26
|
+
/**
|
|
27
|
+
* Checks if a transaction exists in the pool and returns it.
|
|
28
|
+
* @param txHash - The generated tx hash.
|
|
29
|
+
* @returns The transaction, if found, 'undefined' otherwise.
|
|
30
|
+
*/
|
|
31
|
+
getTxByHash(txHash: TxHash): Promise<Tx | undefined>;
|
|
32
|
+
getArchivedTxByHash(): Promise<Tx | undefined>;
|
|
33
|
+
/**
|
|
34
|
+
* Adds a list of transactions to the pool. Duplicates are ignored.
|
|
35
|
+
* @param txs - An array of txs to be added to the pool.
|
|
36
|
+
* @returns Empty promise.
|
|
37
|
+
*/
|
|
38
|
+
addTxs(txs: Tx[]): Promise<void>;
|
|
39
|
+
/**
|
|
40
|
+
* Deletes transactions from the pool. Tx hashes that are not present are ignored.
|
|
41
|
+
* @param txHashes - An array of tx hashes to be removed from the tx pool.
|
|
42
|
+
* @returns The number of transactions that was deleted from the pool.
|
|
43
|
+
*/
|
|
44
|
+
deleteTxs(txHashes: TxHash[]): Promise<void>;
|
|
45
|
+
/**
|
|
46
|
+
* Gets all the transactions stored in the pool.
|
|
47
|
+
* @returns Array of tx objects in the order they were added to the pool.
|
|
48
|
+
*/
|
|
49
|
+
getAllTxs(): Promise<Tx[]>;
|
|
50
|
+
/**
|
|
51
|
+
* Gets the hashes of all transactions currently in the tx pool.
|
|
52
|
+
* @returns An array of transaction hashes found in the tx pool.
|
|
53
|
+
*/
|
|
54
|
+
getAllTxHashes(): Promise<TxHash[]>;
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=memory_tx_pool.d.ts.map
|
|
@@ -0,0 +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,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;IA0B/C,kBAAkB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAQ7C,gBAAgB,IAAI,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IAM/C,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;IAW5E;;;;OAIG;IACI,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC;IAKpD,mBAAmB,IAAI,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC;IAIrD;;;;OAIG;IACU,MAAM,CAAC,GAAG,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAsB7C;;;;OAIG;IACI,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBnD;;;OAGG;IACI,SAAS,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;IAIjC;;;OAGG;IACI,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;CAG3C"}
|