-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Merge Bitpay's version of Bitcoin Core (additional indexes) #914
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Adds a configuration option for addressindex to search for txids by address. Includes an additional rpc method for getting the txids for an address.
fixes a sorting issue when iterating over keys
It's only necessary to sort when combining results for several addresses as the results are already in order from the database.
There was a bug where the spending address index could have the same key as the receiving address index if the input and output indexes matched. This lead to the output always overwriting the input index leading to incorrect balances with missing spent amounts. This patch separates the two so that they have unique keys so balances will be correctly calculated.
There was an issue where getblockhashes wouldn't work from bitcoin-cli as the two params would be strings instead of integers. This fixes that issue, and will parse the first param as JSON for other addressindex related rpc methods.
for the purposes of secondary sorting by block order
0.12.1 bitcore
fixes a minor bug where iteration would not end when there are matching hashes for a p2sh and p2pkh address, and would return results for both addresses
fixes a bug that would happen when an output would match an input with the same address and index, and would lead to the outputs not appearing in results.
…ests mempool address index bug fixes
rpc: add input confirmations to getrawtransaction
main: do not log error when spent info not found
Revert "rpc: add input confirmations to getrawtransaction"
Resolved Conflicts: .travis.yml (ignoring changes, leaving dash version) src/Makefile.am src/main.cpp src/main.h src/rpcclient.cpp src/rpcserver.cpp src/script/script.cpp src/script/script.h
|
Maybe we need a compiler switch (like DISABLE_WALLET) to guard these features |
| { "blockchain", "gettxoutsetinfo", &gettxoutsetinfo, true }, | ||
| { "blockchain", "verifychain", &verifychain, true }, | ||
| { "blockchain", "invalidateblock", &invalidateblock, true }, | ||
| { "blockchain", "reconsiderblock", &reconsiderblock, true }, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess you don't wont to remove these
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We somehow missed bitcoin@5ebe095 so I resolved it this way.
|
Is this still WIP? |
|
Changed title ;) This merge is kind of huge so I still would like to hear any comments and/or (ut/n)ACKs from @evan82 though. |
|
Yep, i agree - waiting for comments and/or (ut/n)ACKs from @evan82 :) |
|
This is insanely useful and built entirely separate from core... merged 👍 |
.travis.yml (ignoring changes, keeping dash version)
src/Makefile.am
src/main.cpp
src/main.h
src/rpcclient.cpp
src/rpcserver.cpp
src/script/script.cpp
src/script/script.h
qa/rpc-tests/addressindex.py
qa/rpc-tests/spentindex.py
qa/rpc-tests/txtindex.py
src/test/script_P2PKH_tests.cpp