Skip to content

coinbaser: Optional reuse of the last coinbaser split, off by default - #42

Closed
Maveth wants to merge 1 commit into
CONVOYMining:masterfrom
Maveth:cbreuse
Closed

Maveth wants to merge 1 commit into
CONVOYMining:masterfrom
Maveth:cbreuse

Conversation

@Maveth

@Maveth Maveth commented Oct 11, 2026

Copy link
Copy Markdown

datum.coinbaser_reuse defaults to false.
New block Job 1 and job 2 stay one pool output, and a missing coinbaser answer still publishes that one output. as is now.

When the option is on and a multi-out list has been saved, the opening notify uses that list at the subsidy. The fee template uses the same list stretched to the fee total until the pool's own split arrives. A missing or short answer on the later job stretches that list too. No saved list leaves the one-output coinbase in place.

one caveat, the pool might need to do accounting for a double block on its own pool. riptide handles is as a bonus double payment for the previous 8 blocks, rather than a low work single payment with pool only payment. so they already have to do an accounting as well.

datum.coinbaser_reuse defaults to false. Job 1 and job 2 stay one pool
output, and a missing coinbaser answer still publishes that one output.

When the option is on and a multi-out list has been saved, the opening
notify uses that list at the subsidy. The fee template uses the same
list stretched to the fee total until the pool's own split arrives.
A missing or short answer on the later job stretches that list too.
No saved list leaves the one-output coinbase in place.
@luke-jr

luke-jr commented Oct 12, 2026

Copy link
Copy Markdown

This is not a good config option. In most ordinary cases, the pool can't account for it (the funds already ended up in the wrong place). And unless the previous block was empty, it won't be the right sum anyway.

If there's an actual use case for a pool (one that doesn't care about the sum?), it should be implemented as a pool config option, not a user config option.

@luke-jr luke-jr closed this Oct 12, 2026
@Maveth

Maveth commented Oct 12, 2026

Copy link
Copy Markdown
Author

the code scales coinbase (same %) to the new blocks payout
first empty is scaled to 3.125
2nd fast tx without a pool cb, it scales it to the value
then replaces with pools rel split,

when used along with 39/40 code
typically within 30ms (12-80) was my tests
the first two edge cases are few ms

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.

2 participants