Whenever -blocksonly is specified, there is implicitly a zero size mempool. However, there is still a non-zero value for -maxmempool which will be shared with dbcache, leading to 300 MB extra usage. Fix this.
assert(!node.fee_estimator);
     
     
    if (!ignores_incoming_txs) node.fee_estimator = std::make_unique<CBlockPolicyEstimator>(FeeestPath(args));
     
    for (const std::string port_option : {
        "-port",
        "-rpcport",
    }) {
        if (args.IsArgSet(port_option)) {
            const std::string port = args.GetArg(port_option, "");
            uint16_t n;
            if (!ParseUInt16(port, &n) || n == 0) {
                return InitError(InvalidPortErrMsg(port_option, port));
            }
        }
    }
    for (const std::string port_option : {
        "-i2psam",
        "-onion",
        "-proxy",
        "-rpcbind",
        "-torcontrol",
        "-whitebind",
        "-zmqpubhashblock",
        "-zmqpubhashtx",
        "-zmqpubrawblock",
        "-zmqpubrawtx",
        "-zmqpubsequence",
    }) {