Needed several attempts to do a sendpayment.py, because the coinjoin always crashed when it tried to create the transactions. On the console it reports:
"ValueError: Calculated transaction fee of: (...) is too large for our inputs;Please try again."
This seems to be the relevant part of the log:
''''
TIMESTAMP_0000000000104 [MainThread ] [DEBUG] got estimated tx bytes: 6388
TIMESTAMP_0000000000105 [MainThread ] [DEBUG] Based on initial guess: 10000, we estimated a fee of: 106430
TIMESTAMP_0000000000106 [MainThread ] [DEBUG] CRASHING, DUMPING EVERYTHING
''''
Here's the full log: sendpayment crash
I only could fix this by manually selecting the parties to coinjoin with. I selected those with high fees, because my guess why this happens is: the cheaper joiners have dozens of dozens of super-small outputs to spend and need many of them to create the desired coinjoin-output-size (in my case, about 2 BTC). This creates a huge transaction with way larger fees than estimated (even setting the tx_fee in joinmarket.cfg to 25 did not help here).
More expensive counterparties probably have less "business" and less scattered mixdepths with bigger concentrations. But there's no way for a taker to know this in advance, he just has to eat those tx-fees unless he bumps into a hardcoded maximum like I did, right?
I dont mind this problem myself, but believe that the default settings should work for the average user. We should make it as convenient and easy as possible for them... maybe let makers also send the single biggest output they could spend to give takers a chance to find makers with fewer required outputs, thus creating a smaller transaction, reducing fees and helping the bitcoin network in the process?
Needed several attempts to do a sendpayment.py, because the coinjoin always crashed when it tried to create the transactions. On the console it reports:
"ValueError: Calculated transaction fee of: (...) is too large for our inputs;Please try again."
This seems to be the relevant part of the log:
''''
TIMESTAMP_0000000000104 [MainThread ] [DEBUG] got estimated tx bytes: 6388
TIMESTAMP_0000000000105 [MainThread ] [DEBUG] Based on initial guess: 10000, we estimated a fee of: 106430
TIMESTAMP_0000000000106 [MainThread ] [DEBUG] CRASHING, DUMPING EVERYTHING
''''
Here's the full log: sendpayment crash
I only could fix this by manually selecting the parties to coinjoin with. I selected those with high fees, because my guess why this happens is: the cheaper joiners have dozens of dozens of super-small outputs to spend and need many of them to create the desired coinjoin-output-size (in my case, about 2 BTC). This creates a huge transaction with way larger fees than estimated (even setting the tx_fee in joinmarket.cfg to 25 did not help here).
More expensive counterparties probably have less "business" and less scattered mixdepths with bigger concentrations. But there's no way for a taker to know this in advance, he just has to eat those tx-fees unless he bumps into a hardcoded maximum like I did, right?
I dont mind this problem myself, but believe that the default settings should work for the average user. We should make it as convenient and easy as possible for them... maybe let makers also send the single biggest output they could spend to give takers a chance to find makers with fewer required outputs, thus creating a smaller transaction, reducing fees and helping the bitcoin network in the process?