Skip to content

Commit

Permalink
Merge pull request mempool#65 from mempool/mononaut/mempool-txs-page-…
Browse files Browse the repository at this point in the history
…size

Configurable mempool txs page size
  • Loading branch information
softsimon authored Nov 15, 2023
2 parents ca05b2d + 19cae6b commit 329f200
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 1 deletion.
8 changes: 8 additions & 0 deletions src/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@ pub struct Config {
pub rest_default_block_limit: usize,
pub rest_default_chain_txs_per_page: usize,
pub rest_default_max_mempool_txs: usize,
pub rest_max_mempool_page_size: usize,

#[cfg(feature = "liquid")]
pub parent_network: BNetwork,
Expand Down Expand Up @@ -231,6 +232,12 @@ impl Config {
.help("The default number of mempool transactions returned by the txs endpoints.")
.default_value("50")
)
.arg(
Arg::with_name("rest_max_mempool_page_size")
.long("rest-max-mempool-page-size")
.help("The maximum number of transactions returned by the paginated /internal/mempool/txs endpoint.")
.default_value("1000")
)
.arg(
Arg::with_name("electrum_txs_limit")
.long("electrum-txs-limit")
Expand Down Expand Up @@ -484,6 +491,7 @@ impl Config {
"rest_default_max_mempool_txs",
usize
),
rest_max_mempool_page_size: value_t_or_exit!(m, "rest_max_mempool_page_size", usize),
jsonrpc_import: m.is_present("jsonrpc_import"),
light_mode: m.is_present("light_mode"),
address_search: m.is_present("address_search"),
Expand Down
6 changes: 5 additions & 1 deletion src/rest.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1305,9 +1305,13 @@ fn handle_request(
None,
) => {
let last_seen_txid = last_seen_txid.and_then(|txid| Txid::from_hex(txid).ok());
let max_txs = query_params
.get("max_txs")
.and_then(|s| s.parse::<usize>().ok())
.unwrap_or(config.rest_max_mempool_page_size);
let txs = query
.mempool()
.txs_page(10_000, last_seen_txid)
.txs_page(max_txs, last_seen_txid)
.into_iter()
.map(|tx| (tx, None))
.collect();
Expand Down

0 comments on commit 329f200

Please sign in to comment.