syscoin / blockmarket-desktop-public

Public location for issue reporting on the Blockmarket Desktop public data, built using Syscoin blockchain technology.
http://blockchainfoundry.co
30 stars 25 forks source link

Wallet Balance/Transaction History Not Updating #259

Open IceAge0121 opened 6 years ago

IceAge0121 commented 6 years ago

Twice now I have sent SYS from my wallet to my alias, but the balances on either account don't reflect that. The main wallet will continue to indicate the full balance, while the alias shows a 0 balance. Also, neither the send nor the receive will show up in the transaction history. The transaction does correctly show in the explorer, however. I can force the balances to update by closing BM and reopening it.

Screenshot showing the most recent attempt at sending coins to my own alias:

image

image

After closing BM and re-opening it, balances are correct, but the transaction still doesn't show:

image

einalex commented 6 years ago

are you using the newest version of BM (1.1.1) and if so: did you delete the blockmarket (NOT the syscoin folder) folder when upgrading?

IceAge0121 commented 6 years ago

This was posted with BM 1.1, but it still happens in 1.1.1. No, I didn't delete anything. I just download and install new updates as they come out.

einalex commented 6 years ago

deleting the blockmarket (not syscoin) folder helped another user... perhaps it works for you too. be sure to have a backup of your wallet.dat (should be in your syscoin folder).

dwasyluk commented 6 years ago

@IceAge0121 I think what you found here relative to the alias balance updating without a hard-refresh (close and reopen BM) is a good find. In regards to "neither the send nor the receive will show up in the transaction history" do you mean in the alias-specific tx history? Your screenshot seems to show the send/recv in the tx history, clarification would be helpful in fixing this.

dwasyluk commented 6 years ago

This seems to impact transactions from imported addresses as well.

IceAge0121 commented 6 years ago

All screen shots are showing the transactions listed on the "Home" page of BlockMarket. As I recall, they didn't show up in the "Send/Receive" area either. Basically it was like the transactions never occured, even though they exist on the blockchain, and even though the balances are eventually corrected by a hard refresh.

EDIT: The transactions didn't show up ANYWHERE, under alias, or under main wallet.

bstr156 commented 6 years ago

I'm having a very similar issue with txlist, but my example does not involve Alias. I backed-up wallet.dat within Syscoin-QT and transferred the .dat to an instance of BM 1.1.1 on a separate machine. Afterwards, in BM 1.1.1, past transactions to addresses that have text labels (which were visible in QT) do not show up in BM [Transaction List]; I only see transactions there corresponding to addresses that do not have text labels. However, I do see all the text label addresses in [Send/Receive]>[Receiving Address List].

Balance is fine. Just can't see those TX.

Let me know if you'd prefer me to open a separate issue. I can provide screencaps if necessary.

dwasyluk commented 6 years ago

@bstr156 what you're describing is a something related to the address book feature of QT which we don't support in BM DT just yet. As such the behavior your describing is as-intended/no bug. I will review the QT user experience to ensure that when we implement the address book the functionality is analogous. I'm not sure the address book is stored in wallet.dat; if its not then the actions you described would still result in a lack-of-label for those transactions. I'll investigate and followup.

dwasyluk commented 6 years ago

Ok after some more digging on this I think we'll need a core RPC fix to really address this. If you send to an alias you own the alias does update but you have to restart BM to see the update. I'll add a separate issue for that.

The reason that transactions themselves are absent from the list is because the listtransactions RPC does not include transactions from/to addresses owned by the same wallet.dat. I verified that the transactions DO show up in the QT UI as shown here but are missing data that other normal transactions carry.

screen shot 2017-11-30 at 2 10 12 am

Even though its present in QT, its not present in the listtransactions RPC (even if you use includeWatchOnly jff). Because BM lists for txs rely on the tx being present in this list, we'll need to create a new method that includes this info. We can't modify the current method because exchanges rely on it in its current format. I guess we could add another variable like includeSendToSelf.