Versions in this module Expand all Collapse all v0 v0.1.0 Jul 12, 2018 Changes in this version + func Connect(host, port, user, pass, dbname string) (*sql.DB, error) + func CreateTable(db *sql.DB, tableName string) error + func CreateTables(db *sql.DB) error + func CreateTypes(db *sql.DB) error + func DeindexAddressTableOnAddress(db *sql.DB) (err error) + func DeindexAddressTableOnTxHash(db *sql.DB) (err error) + func DeindexAddressTableOnVoutID(db *sql.DB) (err error) + func DeindexBlockTableOnHash(db *sql.DB) (err error) + func DeindexTransactionTableOnBlockIn(db *sql.DB) (err error) + func DeindexTransactionTableOnHashes(db *sql.DB) (err error) + func DeindexVinTableOnPrevOuts(db *sql.DB) (err error) + func DeindexVinTableOnVins(db *sql.DB) (err error) + func DeindexVoutTableOnTxHash(db *sql.DB) (err error) + func DeindexVoutTableOnTxHashIdx(db *sql.DB) (err error) + func DisableLog() + func DropTables(db *sql.DB) + func IndexAddressTableOnAddress(db *sql.DB) (err error) + func IndexAddressTableOnTxHash(db *sql.DB) (err error) + func IndexAddressTableOnVoutID(db *sql.DB) (err error) + func IndexBlockTableOnHash(db *sql.DB) (err error) + func IndexTransactionTableOnBlockIn(db *sql.DB) (err error) + func IndexTransactionTableOnHashes(db *sql.DB) (err error) + func IndexVinTableOnPrevOuts(db *sql.DB) (err error) + func IndexVinTableOnVins(db *sql.DB) (err error) + func IndexVoutTableOnTxHash(db *sql.DB) (err error) + func IndexVoutTableOnTxHashIdx(db *sql.DB) (err error) + func InsertAddressOut(db *sql.DB, dbA *dbtypes.AddressRow) (uint64, error) + func InsertAddressOuts(db *sql.DB, dbAs []*dbtypes.AddressRow) ([]uint64, error) + func InsertBlock(db *sql.DB, dbBlock *dbtypes.Block, isValid, checked bool) (uint64, error) + func InsertBlockPrevNext(db *sql.DB, blockDbID uint64, hash, prev, next string) error + func InsertTx(db *sql.DB, dbTx *dbtypes.Tx, checked bool) (uint64, error) + func InsertTxns(db *sql.DB, dbTxns []*dbtypes.Tx, checked bool) ([]uint64, error) + func InsertVin(db *sql.DB, dbVin dbtypes.VinTxProperty) (id uint64, err error) + func InsertVins(db *sql.DB, dbVins dbtypes.VinTxPropertyARRAY) ([]uint64, error) + func InsertVout(db *sql.DB, dbVout *dbtypes.Vout, checked bool) (uint64, error) + func InsertVouts(db *sql.DB, dbVouts []*dbtypes.Vout, checked bool) ([]uint64, []dbtypes.AddressRow, error) + func RetrieveAddressIDsByOutpoint(db *sql.DB, txHash string, voutIndex uint32) ([]uint64, []string, error) + func RetrieveAddressRecvCount(db *sql.DB, address string) (count int64, err error) + func RetrieveAddressSpent(db *sql.DB, address string) (count, totalAmount int64, err error) + func RetrieveAddressSpentUnspent(db *sql.DB, address string) (numSpent, numUnspent, totalSpent, totalUnspent int64, err error) + func RetrieveAddressTxns(db *sql.DB, address string, N, offset int64) ([]uint64, []*dbtypes.AddressRow, error) + func RetrieveAddressTxnsAlt(db *sql.DB, address string, N, offset int64) ([]uint64, []*dbtypes.AddressRow, error) + func RetrieveAddressUnspent(db *sql.DB, address string) (count, totalAmount int64, err error) + func RetrieveAllAddressTxns(db *sql.DB, address string) ([]uint64, []*dbtypes.AddressRow, error) + func RetrieveAllVinDbIDs(db *sql.DB) (vinDbIDs []uint64, err error) + func RetrieveBestBlockHeight(db *sql.DB) (height uint64, hash string, id uint64, err error) + func RetrieveDbTxByHash(db *sql.DB, txHash string) (id uint64, dbTx *dbtypes.Tx, err error) + func RetrieveFullTxByHash(db *sql.DB, txHash string) (id uint64, blockHash string, blockHeight int64, blockTime int64, time int64, ...) + func RetrieveFundingOutpointByTxIn(db *sql.DB, txHash string, vinIndex uint32) (id uint64, tx string, index uint32, tree int8, err error) + func RetrieveFundingOutpointByVinID(db *sql.DB, vinDbID uint64) (tx string, index uint32, tree int8, err error) + func RetrieveFundingTxByTxIn(db *sql.DB, txHash string, vinIndex uint32) (id uint64, tx string, err error) + func RetrieveFundingTxsByTx(db *sql.DB, txHash string) ([]uint64, []*dbtypes.Tx, error) + func RetrievePkScriptByID(db *sql.DB, id uint64) (pkScript []byte, err error) + func RetrieveRegularTxByHash(db *sql.DB, txHash string) (id uint64, blockHash string, blockInd uint32, err error) + func RetrieveSpendingTxByTxOut(db *sql.DB, txHash string, voutIndex uint32) (id uint64, tx string, vin uint32, tree int8, err error) + func RetrieveSpendingTxByVinID(db *sql.DB, vinDbID uint64) (tx string, voutIndex uint32, tree int8, err error) + func RetrieveSpendingTxsByFundingTx(db *sql.DB, fundingTxID string) (dbIDs []uint64, txns []string, vinInds []uint32, voutInds []uint32, err error) + func RetrieveStakeTxByHash(db *sql.DB, txHash string) (id uint64, blockHash string, blockInd uint32, err error) + func RetrieveTxByHash(db *sql.DB, txHash string) (id uint64, blockHash string, blockInd uint32, tree int8, err error) + func RetrieveTxsByBlockHash(db *sql.DB, blockHash string) (ids []uint64, txs []string, blockInds []uint32, trees []int8, err error) + func RetrieveVinByID(db *sql.DB, vinDbID uint64) (prevOutHash string, prevOutVoutInd uint32, prevOutTree int8, txHash string, ...) + func RetrieveVoutIDByOutpoint(db *sql.DB, txHash string, voutIndex uint32) (id uint64, err error) + func RetrieveVoutValue(db *sql.DB, txHash string, voutIndex uint32) (value uint64, err error) + func RetrieveVoutValues(db *sql.DB, txHash string) (values []uint64, txInds []uint32, txTrees []int8, err error) + func SetSpendingByVinID(db *sql.DB, vinDbID uint64, spendingTxDbID uint64, spendingTxHash string, ...) (int64, error) + func SetSpendingForAddressDbID(db *sql.DB, addrDbID uint64, spendingTxDbID uint64, spendingTxHash string, ...) error + func SetSpendingForFundingOP(db *sql.DB, fundingTxHash string, fundingTxVoutIndex uint32, ...) (int64, error) + func SetSpendingForVinDbID(db *sql.DB, vinDbID uint64) (int64, error) + func SetSpendingForVinDbIDs(db *sql.DB, vinDbIDs []uint64) ([]int64, int64, error) + func TableExists(db *sql.DB, tableName string) (bool, error) + func TableVersions(db *sql.DB) map[string]int32 + func TypeExists(db *sql.DB, tableName string) (bool, error) + func UpdateBlockNext(db *sql.DB, blockDbID uint64, next string) error + func UpdateLastBlock(db *sql.DB, blockDbID uint64, isValid bool) error + func UseLogger(logger btclog.Logger) + type ChainDB struct + func NewChainDB(dbi *DBInfo, params *chaincfg.Params) (*ChainDB, error) + func (db *ChainDB) SyncChainDB(client *hcrpcclient.Client, quit chan struct{}, ...) (int64, error) + func (db *ChainDB) SyncChainDBAsync(res chan dbtypes.SyncResult, client *hcrpcclient.Client, quit chan struct{}, ...) + func (pgb *ChainDB) AddressHistory(address string, N, offset int64) ([]*dbtypes.AddressRow, *explorer.AddressBalance, error) + func (pgb *ChainDB) BlockTransactions(blockHash string) ([]string, []uint32, []int8, error) + func (pgb *ChainDB) Close() error + func (pgb *ChainDB) DeindexAddressTable() error + func (pgb *ChainDB) DeindexAll() error + func (pgb *ChainDB) DropTables() + func (pgb *ChainDB) EnableDuplicateCheckOnInsert(dupCheck bool) + func (pgb *ChainDB) FillAddressTransactions(addrInfo *explorer.AddressInfo) error + func (pgb *ChainDB) Height() uint64 + func (pgb *ChainDB) HeightDB() (uint64, error) + func (pgb *ChainDB) IndexAddressTable() error + func (pgb *ChainDB) IndexAll() error + func (pgb *ChainDB) SetupTables() error + func (pgb *ChainDB) SpendingTransaction(fundingTxID string, fundingTxVout uint32) (string, uint32, int8, error) + func (pgb *ChainDB) SpendingTransactions(fundingTxID string) ([]string, []uint32, []uint32, error) + func (pgb *ChainDB) Store(_ *blockdata.BlockData, msgBlock *wire.MsgBlock) error + func (pgb *ChainDB) StoreBlock(msgBlock *wire.MsgBlock, isValid, updateAddressesSpendingInfo bool) (numVins int64, numVouts int64, err error) + func (pgb *ChainDB) TransactionBlock(txID string) (string, uint32, int8, error) + func (pgb *ChainDB) UpdateSpendingInfoInAllAddresses() (int64, error) + func (pgb *ChainDB) VoutValue(txID string, vout uint32) (uint64, error) + func (pgb *ChainDB) VoutValues(txID string) ([]uint64, []uint32, []int8, error) + type DBInfo struct + DBName string + Host string + Pass string + Port string + User string