dgb(#82): wire won-block P2P-relay PRIMARY arm to live coin-daemon producer - #260
Merged
Conversation
…oducer Add NodeP2P::submit_block_p2p_raw(raw_bytes) — frames an already-serialized won block as a `block` P2P message and writes it to the connected coin daemon (no decode/re-encode, unlike submit_block(BlockType&)). In main_dgb run_node, hoist the coin_p2p producer declaration ahead of the m_on_block_found binding and bind the dual-path broadcaster P2pRelaySink to post submit_block_p2p_raw onto the io thread. Now that the live NodeP2P producer landed on master (e5c12cb), the previously-guarded PRIMARY arm has a real sink; the RPC fallback leg is unchanged. Surface-for-tap: the reconstruct closure still returns nullopt (faithful gentx reassembly is Phase B embedded), so broadcast_won_block is never called with a real block this build — NO behavior change. Fenced to src/impl/dgb + main_dgb.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Adds
NodeP2P::submit_block_p2p_raw(raw_bytes)— frames an already-serialized won block as ablockP2P message and writes it to the connected coin daemon (no decode/re-encode round trip, unlikesubmit_block(BlockType&)).In
main_dgb run_node, hoists thecoin_p2pproducer declaration ahead of them_on_block_foundbinding and binds the dual-path broadcasterP2pRelaySinkto postsubmit_block_p2p_rawonto the io thread.Why now
The live
NodeP2Pproducer landed on master (e5c12cbe7). The PRIMARY P2P-relay arm of the #82 dual-path broadcaster was previously guarded (P2pRelaySink{}) for lack of a live producer to bind — it now has a real sink. RPC fallback leg unchanged (dual-path rule preserved).Safety / scope
nullopt(faithful gentx reassembly is Phase B embedded), sobroadcast_won_blockis never called with a real block this build.src/impl/dgb/coin/p2p_node.hpp+src/c2pool/main_dgb.cpp. No shared-base / bitcoin_family / doge-aux touch.c2pool-dgblinks EXIT=0.HOLD merge — operator tap.