Steps to reproduce:

* Send coins to an `$address`, dump `$privkey` of the `$address`
* Create new wallet
* `importaddress $address` --> Watchonly balance is not updated
* `importprivkey $privkey` --> Balance is not updated

Needs a restart to get fixed. See also #11477 
{
    uint64_t _creation_flags = options.create_flags;
    const SecureString& passphrase = options.create_passphrase;
    if (_creation_flags & WALLET_FLAG_DESCRIPTORS) options.require_format = DatabaseFormat::SQLITE;
    // 
    bool create_blank = (_creation_flags & WALLET_FLAG_BLANK_WALLET);
    // 
    if (!passphrempty()) {
        _creation_flags |= WALLET_FLAG_BLANK_WALLET;
    }
    // 
    if ((_creation_flags & WALLET_FLAG_EXTERNAL_SIGNER) && !(_creation_flags & WALLET_FLAG_DISABLE_PRIVATE_KEYS)) {
        error = Untranslated("Private keys must be disabled when using an external signer");
        status = DatabaseStatus::FAILED_CREATE;
        return nuptr;
    }
    // 
    if ((_creation_flags & WALLET_FLAG_EXTERNAL_SIGNER) && !(_creation_flags & WALLET_FLAG_DESCRIPTORS)) {
        error = Untranslated("Descriptor support must be enabled when using an external signer");
        status = DatabaseStatus::FAILED_CREATE;
        return nuptr;
    }
    // 
    if (!passphrempty() && (_creation_flags & WALLET_FLAG_DISABLE_PRIVATE_KEYS)) {
        error = Untranslated("Passphrase provided but private keys are disabled. A passphrase is only used to encrypt private keys, so cannot be used for s with private keys disabled.");
        status = DatabaseStatus::FAILED_CREATE;
        return nuptr;
    }
    //