Performing the following (note the range of 10,000):

`importmulti '[{"desc": "sh(wpkh([aeee1e6a/49h/1h/0h]tpubDC5bVdaveQYxGFztMShFAjU637kKjrs9FD8ne1oHR7z8tLeQJExsaxWRVeSpcCcYMdp5ecf2LQhuVaeYFZ7YEpvWTJr4nDGUJrmuvLuTSsp/1/*))", "keypool": true, "timestamp": "now", "watchonly": true, "internal": true, "range": {"end": 1000}}]' '{"rescan": false}'`

takes many minutes. @achow101 reports a similar import taking 6 minutes on his machine.
{"label", RPCArg::Type::STR,  "''", "Label to assign to the address, only allowed with internal=false"},
                                    {"keypool", RPCArg::Type::BOOL,  "false", "Stating whether imported public keys should be added to the keypool for when users request new addresses. Only allowed when wallet private keys are disabled"},
                                },
                            },
                        },
                        "\"requests\""},
                    {"options", RPCArg::Type::OBJ, RPCArg::Optional::OMITTED_NAMED_ARG, "",
                        {
                            {"rescan", RPCArg::Type::BOOL,  "true", "Stating if should rescan the blockchain after all imports"},
                        },
                        "\"options\""},
                },
                RPCResult{
            "\nResponse is an array with the same size as the input that has the execution result :\n"
            "  [{\"success\": true}, {\"success\": true, \"warnings\": [\"Ignoring irrelevant private key\"]}, {\"success\": false, \"error\": {\"code\": -1, \"message\": \"Internal Server Error\"}}, ...]\n"
                },
                RPCExamples{
                    HelpExampleCli("importmulti", "'[{ \"scriptPubKey\": { \"address\": \"<my address>\" }, \"timestamp\":1455191478 }, "
                                          "{ \"scriptPubKey\": { \"address\": \"<my 2nd address>\" }, \"label\": \"example 2\", \"timestamp\": 1455191480 }]'") +
                    HelpExampleCli("importmulti", "'[{ \"scriptPubKey\": { \"address\": \"<my address>\" }, \"timestamp\":1455191478 }]' '{ \"rescan\": false}'")
                },
            }.ToString()
        );
    RPCTypeCheck(mainRequest.params, {UniValue::VARR, UniValue::VOBJ});
    const UniValue& requests = mainRequest.params[0];
    
    bool fRescan = true;
    if (!mainRequest.params[1].isNull()) {
        const UniValue& options = mainRequest.params[1];
        if (options.exists("rescan")) {