diff --git a/src/electrum/server.rs b/src/electrum/server.rs index 6887ccb98..fe537f813 100644 --- a/src/electrum/server.rs +++ b/src/electrum/server.rs @@ -106,7 +106,7 @@ impl JsonRpcV2Error { fn jsonrpc_code(e: &Error) -> JsonRpcV2Error { match e.kind() { ErrorKind::InvalidParams(_) => JsonRpcV2Error::InvalidParams, - ErrorKind::TooPopular => JsonRpcV2Error::BadRequest, + ErrorKind::TooPopular | ErrorKind::TooManyUtxos => JsonRpcV2Error::BadRequest, ErrorKind::RpcError(..) => JsonRpcV2Error::DaemonError, _ => JsonRpcV2Error::InternalError, } diff --git a/src/errors.rs b/src/errors.rs index dbe5f1b2d..fadc6f9ca 100644 --- a/src/errors.rs +++ b/src/errors.rs @@ -24,6 +24,11 @@ error_chain! { display("Too many history entries") } + TooManyUtxos { + description("Too many unspent outputs") + display("Too many unspent outputs") + } + InvalidParams(msg: String) { description("Invalid RPC params") display("{}", msg) diff --git a/src/new_index/schema.rs b/src/new_index/schema.rs index 8807aca39..6ee9b8732 100644 --- a/src/new_index/schema.rs +++ b/src/new_index/schema.rs @@ -872,7 +872,7 @@ impl ChainQuery { // abort if the utxo set size excedees the limit at any point in time if utxos.len() > limit { - bail!(ErrorKind::TooPopular) + bail!(ErrorKind::TooManyUtxos) } }