Skip to content

Conversation

@braydonf
Copy link
Contributor

@braydonf braydonf commented Mar 22, 2016

  • Indexes are now built in bitcoind with new -addressindex, -timestampindex and -spentindex option from Address and additional indexes bitcoin#6 and bitcoind address index bitcoind-rpc#17
  • Starts bitcoind as a child process communicating over ZMQ/RPC (or connect to bitcoind processes)
  • Adds caching and clustering layer for the bitcoind ZMQ/RPC interface with combined queries
  • API methods for bitcoind service expanded (previously part of address and db services):
    • getBlock - block as Bitcore Block (cached)
    • getRawBlock - block as Node.js Buffer (cached)
    • getBlockHeader- summarized block information
    • getBlockOverview - summarized block information with txids
    • getBlockHashesByTimestamp - Array of block hashes within two dates
    • getBestBlockHash - the lastest blockhash
    • getSpentInfo - gives the txid that has spent an output
    • getInfo - general blockchain info
    • syncPercentage - the current sync percentage
    • isSynced - boolean of the chain is past the initial sync
    • getRawTransaction - transaction as Node.js Buffer (cached)
    • getTransaction - transaction as Bitcore Transaction (cached)
    • getDetailedTransaction - transaction plus block info, spent information, and input values
    • sendTransaction - broadcasts transaction to the network
    • estimateFee - gives a fee estimate based on number of blocks
    • getAddressTxids - gives all txids for address(es) (cached, updates with mempool)
    • getAddressBalance - gives the received and current balance for address(es) (cached)
    • getAddressUnspentOutputs - gives unspent outputs for address(es)
    • getAddressHistory - gives detailed transactions for address(es)
    • getAddressSummary - gives a summary with balance and txids for address(es)
    • generateBlock - generates a block (for development)

Todo:

  • Update url to download bitcoin from a released version of the bitcoin-0.12-bitcore branch (with address indexes), currently pointing to beta releases.
  • Longer running test deployment of single and multiple bitcoind connected, with typical API usage and load, and in combination with insight-api, insight-ui and bitcore-wallet-service.
  • Update package.json to a released version of bitcoind-rpc with necessary changes: bitcoind address index bitcoind-rpc#17
  • Review bitcoind service API methods, e.g. getTransactionWithBlockInfo in relation to issue getTransactionWithBlockInfo over socket.io omits block info #423, and getInfo results that are passed from bitcoind. We will handle this by adding a new method, getDetailedTransaction.

@braydonf braydonf force-pushed the bitcoind branch 3 times, most recently from f29c732 to 4f131cc Compare May 24, 2016 19:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants