lbcwallet/wtxmgr
Wilmer Paulino aa826c64cf
wtxmgr: store multiple spending tx hashes for outpoints
In this commit, we modify the way we store spending transaction hashes
for unconfirmed spends. Now, rather than only keeping track of one
possible unconfirmed spend, we track multiple in order to ensure we
properly handle transaction replacements, like in the case of RBF,
double spends, etc. With this in, the double spent tests recently added
should now pass.
2018-07-16 13:39:53 -07:00
..
db.go wtxmgr: store multiple spending tx hashes for outpoints 2018-07-16 13:39:53 -07:00
doc.go Use LICENSE file and short license headers. 2016-02-28 22:22:34 -05:00
error.go Improve wallet atomicity. 2018-05-23 19:38:56 -07:00
example_test.go multi: switch import paths back to upstream 2018-05-23 19:38:56 -07:00
kahnsort.go multi: switch import paths back to upstream 2018-05-23 19:38:56 -07:00
log.go Use LICENSE file and short license headers. 2016-02-28 22:22:34 -05:00
query.go multi: switch import paths back to upstream 2018-05-23 19:38:56 -07:00
query_test.go multi: switch import paths back to upstream 2018-05-23 19:38:56 -07:00
README.md multi: switch import paths back to upstream 2018-05-23 19:38:56 -07:00
tx.go wtxmgr: store multiple spending tx hashes for outpoints 2018-07-16 13:39:53 -07:00
tx_test.go wtxmgr: add transaction replacement and double spend tests 2018-07-16 13:39:49 -07:00
unconfirmed.go wtxmgr: store multiple spending tx hashes for outpoints 2018-07-16 13:39:53 -07:00

wtxmgr

[Build Status] (https://travis-ci.org/btcsuite/btcwallet)

Package wtxmgr provides storage and spend tracking of wallet transactions and their relevant input and outputs.

Feature overview

  • Storage for relevant wallet transactions
  • Ability to mark outputs as controlled by wallet
  • Unspent transaction output index
  • Balance tracking
  • Automatic spend tracking for transaction inserts and removals
  • Double spend detection and correction after blockchain reorgs
  • Scalable design:
    • Utilizes similar prefixes to allow cursor iteration over relevant transaction inputs and outputs
    • Programmatically detectable errors, including encapsulation of errors from packages it relies on
    • Operates under its own walletdb namespace

Documentation

[GoDoc] (http://godoc.org/github.com/btcsuite/btcwallet/wtxmgr)

Full go doc style documentation for the project can be viewed online without installing this package by using the GoDoc site here: http://godoc.org/github.com/btcsuite/btcwallet/wtxmgr

You can also view the documentation locally once the package is installed with the godoc tool by running godoc -http=":6060" and pointing your browser to http://localhost:6060/pkg/github.com/btcsuite/btcwallet/wtxmgr

Installation

$ go get github.com/btcsuite/btcwallet/wtxmgr

Package wtxmgr is licensed under the copyfree ISC License.