2023.02.21 ci prep #27136

pull ccdle12 wants to merge 45 commits into bitcoin:master from ccdle12:2023.02.21-ci-prep changing 10 files +1409 −0
  1. ccdle12 commented at 2:26 PM on February 21, 2023: contributor

    No description provided.

  2. build: add sv2 template provider compile option and port arg 4b0c14b4cf
  3. build: create and add sv2_template_provider files to Makefile.am 538d081e89
  4. sv2: add base class Sv2Msg for all stratum v2 messages 8d5e6a2fe9
  5. build: add sv2_template_provider_tests unit tests f2d7eb2eb1
  6. sv2: add SetupConnection message and test 2d354c690c
  7. sv2: add SetupConnectionSuccess message and test a47b54499d
  8. sv2: add NewTemplate message and test 885937bbdf
  9. sv2: add SetNewPrevHash message and test c6b478d88e
  10. sv2: add SubmitSolution message and test 0573a15019
  11. sv2: add Sv2MsgType to identify send/recv messages in stratum v2 headers d68217c4d1
  12. sv2: add u24_t type for stratum v2 message headers ad6771422b
  13. sv2: add Sv2Header and tests 488e054f33
  14. sv2: add Sv2Client to encapsulate each stratum v2 connection 336a55ef7a
  15. sv2: add Sv2TemplateProvider as the sv2 main class with server impl 0e9a99a0d0
  16. sv2: add BindListenPort impl to set and bind sv2 listening port 0fb03b0da5
  17. sv2: add thread to Sv2TemplateProvider and impl StopThreads method 2679a9a67b
  18. sv2: add clients list and GenerateSocketEvents for each connected client 73aebc7df4
  19. sv2: add thread interrupt to Sv2TemplateProvider 9bacbdd028
  20. sv2: add a blocks cache to map template ids to candidate blocks
    The template ids are linked to downstream work of a NewTemplate. If the
    client finds a solution and submits the work, the Template Provider will
    look up the cached block according to the id and send the block to
    the p2p network, after applying the work from the client.
    7d65633365
  21. sv2: add TemplateId to track and increment generated ids in NewTemplate f00f70b1dc
  22. sv2: add best new template and add UpdateTemplate method
    The Sv2TemplateProvider will keep track of the best new template to send
    to clients and on certain events, will build a new block, new template
    and cache them.
    c18684c54d
  23. sv2: add best m_prev_hash and UpdatePrevHash()
    m_prev_hash is updated when the template provider builds a new best
    template and sends the SetNewPrevHash message to indicate to the client
    that they can start working on the NewTemplate. This message can also be used
    to instruct clients to work on future NewTemplates that are cached on the
    client side.
    419a1e8646
  24. sv2: add OnNewBlock to send the best template and prev hash to clients 36dfae67d8
  25. sv2: add ProcessSv2Message to contain the handling logic for sv2 messages 4f4ba4603b
  26. sv2: add m_best_block_hash to track the best known hash in the network 232b43b13b
  27. sv2: add ThreadSv2Handler as the main event loop for the server 1253200068
  28. sv2: add Start method to launch the template provider thread e018b1f08e
  29. node/context: add Sv2TemplateProvider to NodeContext 78ff2a8edd
  30. sv2: fix incorrect flags params passed to ProcessNewBlock 126a1d5aa7
  31. sv2: add log print when template provider binds to the listening port 280c428568
  32. init: add Sv2TemplateProvider assignment and tear down bf0fa25fcf
  33. fuzz: add sv2 messages fuzz test c68ca73a20
  34. sv2: add try/catch around unserializing sv2 messages 03a5d43b33
  35. sv2: explicitly increment m_template_id before assinging to NewTemplate 7d0ffeeddd
  36. sv2: remove m_best_block_hash, check the TP is in sync via the best SetNewPrevHash
    * This change uses the m_prev_hash field of the best SetNewPrevHash to
    check if the Template Provider is providing work at the best known
    hash of the chain
    0c0864cb27
  37. sv2: rename only, m_prev_hash -> m_best_prev_hash 07d5eeb397
  38. sv2: omit sending the coinbase tx hash in the merkle path
    * This fixes a reported bug of a "high-hash" validation error when
      validating work from an sv2 pool.
    
    * Also remove additional byte length from the merkle path size
    d2c96f737e
  39. sv2: add witness commitment to NewTemplate if block has segwit inputs 18367b457d
  40. sv2: add Sv2NetMsg for serializing Sv2Header and stratum v2 messages b527c7295a
  41. sv2: use Sv2NetMsg for all outgoing stratum v2 messages 7d93c0e799
  42. sv2: remove GetMsgLen() from all outgoing stratum v2 messages cbbe8cd1bd
  43. sv2: remove GetMsgLen() in tests dd9e1bcb47
  44. sv2: only create new templates on successful block validation 92ed17421e
  45. sv2: serialize coinbase_tx_outputs as Seq064K[B064K] 8126eea323
  46. add tp server h file in makefile 9b56742d41
  47. DrahtBot commented at 2:26 PM on February 21, 2023: member

    <!--e57a25ab6845829454e8d69fc972939a-->

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    <!--021abf342d371248e50ceaed478a90ca-->

    Reviews

    See the guideline for information on the review process. A summary of reviews will appear here.

  48. ccdle12 closed this on Feb 21, 2023

  49. fanquake locked this on Feb 25, 2023
Contributors

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-05-02 18:13 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me