-
Notifications
You must be signed in to change notification settings - Fork 38.7k
IsAllFromMe #9167
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
IsAllFromMe #9167
Conversation
|
Concept ACK |
|
Fee: 0 is perhaps confusing? SelectCoinsMinConf behavior change sounds great. @AdamISZ Joinmarket results in a lot of transactions like this, thoughts? |
|
@gmaxwell I think that was just a mistake in my description, it looks like it doesn't report anything for the fee unless it has the correct fee. If it can't calculate the fee it doesn't subtract anything when reporting the amount. |
|
rebased after #8580 |
|
I expected this to leave out the fee field on coinjoins in listtransactions and gettransaction but find it isn't: $ ./bitcoin-cli gettransaction 14947302eab0608fb2650a05f13f6f30b27a0a314c41250000f77ed904475dbb | grep fee |
|
I replaced the first commit with a different formulation by @sdaftuar that I like better. The functionality is the same and all the other commits are unchanged. |
|
@gmaxwell from IRC in regards to listtransactions and gettransaction: |
|
ACK. |
Commit messages could be a little better, and could mention whether the changes affect behavior or not. |
|
Rebased with more verbose commit messages. @ryanofsky's question about the All valid transactions have vin.size() > 0, so I'm not worried about the |
|
utACK 1bab7890fea0a4c13ad0632e95f304403213ee3e |
|
I believe part of this was merged with bumpfee. Not sure it needs rebase, but a rebase would be nice to see what else is left? |
There is no change in behavior.
Change coin selection in SelectCoinsMinConf to only consider coins mine for spending at the fewer required confirmations if all inputs being spent are mine instead of requiring at least one.
No change in behavior. IsTrusted was already a stricter check.
Fee is now only displayed if all inputs meet the required filter, so if displayed the fee will always be correct. Unusual fees may still be displayed in details.
No change in behavior.
|
rebased to accommodate first commit already being merged. no changes. |
|
utACK acbbc05 (rechecked and confirmed changes identical to 1bab7890fea0a4c13ad0632e95f304403213ee3e) |
|
I would have used an enum with value (DIRTY, YES, NO) and stored an array of it in WalletTx indexed by ISMINE_* value, instead of having to declare two boolean by ISMINE_* version we want to support later. |
|
Needs rebase. |
|
Still needs rebase. If you intend to no longer maintain this, please close it. |
|
This has some bug fixes so it should probably still happen, but I'll need to spend a bit of time to make sure the rebase still makes sense since there have been a bunch of changes. I'll bring it to a resolution shortly. |
|
Needs rebase. (Also marked "Up for grabs", just in case...) |
|
Closing in favor of #12508 |
Created a new wallet and walletTx function
IsAllFromMewhich correctly computes whether all the inputs to a transaction match the requested IsMine filter.Original first commit 766e8a4 already merged.
IsFromMe.SelectCoinsMinConfto only consider new outputs spendable quickly if all the inputs were ours, not just at least one.gettransactionfor mixed debit transactions where some inputs were ours and some weren't. It'll report the correct fee if possible, otherwise 0. Note that the fee reported in the details and any other function which depends onListTransactionsis not changed asgetbalance("*")depends on having incorrect negative fees calculated on mixed debit transactions in order to track the right balances.Note that there are other places in the code such as
AddToWalletIfInvolvingMewhich ideally would be updated to distinguish between 0 satoshi prevouts that are "MINE" and prevouts that aren't "MINE".