In March, I made a backup of the wallet and continued using the node. In October, I restored my old backup. After restoring the backup, I found that the listtransactions command stopped displaying some transactions made during the period from March to October.

**Expected behavior**

The listtransactions command displays all transactions in the restored wallet.

**Actual behavior**

The listtransactions command in the restored wallet does not display some transactions since the backup.

**To reproduce**

1. Run bitcoin core in regtest mode
2. Create a new address A and generate 101 blocks with sending a reward to the created address A
3. Create a wallet backup
4. Create new address B
5. Send transaction to address B, write TXID
6. Generate 1 block with sending a reward to address A
7. View getaddressinfo B. Verify labels are not an empty list
8. View listtransactions. Make sure there is a TXID transaction present
9. Stop bitcoin core
10. Restore backup
11. Run bitcoin core
12. View getaddressinfo B and listtransactions. Detect that the address does not have a label set and that listtransactions does not contain a TXID transaction.

**System information**

Bitcoin Core 0.20.1 on Debian GNU / Linux.

if (involvesWatchonly || (wallet.IsMine(s.destination) & ISMINE_WATCH_ONLY)) {
                entry.pushKV("involvesWatchonly", true);
            }
            MaybePushAddress(entry, s.destination);
            entry.pushKV("category", "send");
            entry.pushKV("amount", ValueFromAmount(-s.amount));
            const auto* address_book_entry = wallet.FindAddressBookEntry(s.destination);
            if (address_book_entry) {
                entry.pushKV("label", address_book_entry->GetLabel());
            }
            entry.pushKV("vout", s.vout);
            entry.pushKV("fee", ValueFromAmount(-nFee));
            if (fLong)
                WalletTxToJSON(wallet, wtx, entry);
            entry.pushKV("abandoned", wtx.isAbandoned());
            ret.push_back(entry);
        }
    }
    
    if (listReceived.size() > 0 && wallet.GetTxDepthInMainChain(wtx) >= nMinDepth) {
        for (const COutputEntry& r : listReceived)
        {
            std::string label;
            const auto* address_book_entry = wallet.FindAddressBookEntry(r.destination);
            if (address_book_entry) {
                label = address_book_entry->GetLabel();
            }
            if (filter_label && label != *filter_label) {
                continue;
            }