- To be able to query an inputTxId and inputIndex that spends an outputTxId and outputIndex
- Extends the mempoolSpentIndex to include the inputTxId and inputIndex
- Bitcoind's CCoinsViewMempool brings the mempool into view, but will not consider outputs therein as spent
- Changed the test description to match what is happening in that view
- Once a given tx has one confirmation, then isSpent will be true for those outputs
Fixes an bug where accessing `prevBlockIndex->phashBlock` for the
genesis block would cause a segmentation fault with an error of
"Cannot access memory at address 0x0". As the genesis block doesn't
have a previous hash, it will now set the "prevHash" to "null".
- Reindexing the bitcore-node database is required with this change.
- Address indexes are updated to include address and height in spent index so that both inputs and outputs can be queried by address and height using "start" and "stop" to limit the range of the query.
- Address history also now supports paginated results using "from" and "to" values that indicate an index in the array.
- Added a very common way to launch a script using the env (saving keystrokes)
- Added a gitignore for the integration/data dir
- Added a bus integration test apart from the regtest and using a test service
- Since we have a spin lock that leads to the callback from a tip update, there could be cases where the callback assigned to a tip update isn't the one matching the last generate.
- The architectural decision is to leave the spin lock in place to lower the number of possible callbacks for tip updates.
- A Node will shutdown if there is an error starting a service as it would lead to cascading errors.
- `node.start()` needs to be called, and nolonger is called automatically when the instance is created.
- A service will only be added to node.services after it's started
- Stopping services that are not started will gracefully continue.
- Logging sync status of db will only apply if the service is started.
- Debug log about a service without a route will always include the service name