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 
{
    AssertLockHeld(cs_);
    // note GetBlocksToMaturity is 0 for non-coinbase tx
    return GetTxBlocksToMaturity(wtx) > 0;
}
bool CWaet::IsCrypted() const
{
    return HasEncryptionKeys();
}
bool CWaet::IsLocked() const
{
    if (!IsCrypted()) {
        return false;
    }
    LOCK(cs_);
    return vMasterKey.empty();
}
bool CWaet::Lock()
{
    if (!IsCrypted())
        return false;
    {
        LOCK(cs_);
        vMasterKey.clear();
    }
    NotifyStatusChanged(this);
    return true;
}
bool CWaet::Unlock(const CKeyingMaterial& vMasterKeyIn, bool accept_no_keys)