lbcwallet/wtxmgr
Wilmer Paulino fbe82c3531
wtxmgr: check existing unspent outputs before adding the credit
In this commit, we resolve a lingering bug within the wallet where it's
possible that an output is added as unconfirmed credit after the fact
that it has already confirmed. This would lead to duplicate entries for
the same output within the wallet causing double spend transactions to
be crafted.
2018-08-29 17:10:40 -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: check existing unspent outputs before adding the credit 2018-08-29 17:10:40 -07:00
tx_test.go wtxmgr/tx_test: add test case for duplicate outputs within the store 2018-08-29 17:10:39 -07:00
unconfirmed.go wtxmgr: check existing unspent outputs before adding the credit 2018-08-29 17:10:40 -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.