fix(wallet): activity duplicate in case of non-native transfer
The "hash" (a.k.a. ID) column was used for matching transfer entry which works only for native transfers which have the `ID` same as hash. Closes: #14071
This commit is contained in:
parent
9d12856329
commit
62405b4def
|
@ -341,6 +341,7 @@ func (c *transfersCommand) confirmPendingTransactions(tx *sql.Tx, allTransfers [
|
|||
continue
|
||||
} else if err != nil {
|
||||
log.Warn("GetOwnedMultiTransactionID", "error", err)
|
||||
existingMTID, err := GetOwnedMultiTransactionID(tx, chainID, txHash, tr.Address)
|
||||
continue
|
||||
}
|
||||
mTID = w_common.NewAndSet(existingMTID)
|
||||
|
|
|
@ -562,8 +562,8 @@ func markBlocksAsLoaded(chainID uint64, creator statementCreator, address common
|
|||
}
|
||||
|
||||
// GetOwnedMultiTransactionID returns sql.ErrNoRows if no transaction is found for the given identity
|
||||
func GetOwnedMultiTransactionID(tx *sql.Tx, chainID w_common.ChainID, id common.Hash, address common.Address) (mTID int64, err error) {
|
||||
row := tx.QueryRow(`SELECT COALESCE(multi_transaction_id, 0) FROM transfers WHERE network_id = ? AND hash = ? AND address = ?`, chainID, id, address)
|
||||
func GetOwnedMultiTransactionID(tx *sql.Tx, chainID w_common.ChainID, hash common.Hash, address common.Address) (mTID int64, err error) {
|
||||
row := tx.QueryRow(`SELECT COALESCE(multi_transaction_id, 0) FROM transfers WHERE network_id = ? AND tx_hash = ? AND address = ?`, chainID, hash, address)
|
||||
err = row.Scan(&mTID)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
|
|
Loading…
Reference in New Issue