Commit Graph

1831 Commits

Author SHA1 Message Date
Matt Hess 76d1efcf57 Implement batch block transfer with server side ancestor fill, BLOCK_BATCH_MAX_COUNT reduced from 50 to 10 to avoid contention warnings, fix get_seed failure in add_external_block returning false 2026-02-19 20:30:23 +00:00
Matt Hess 867047f897 Fix crash at start with loglevel 5 and clean up debug logging 2026-02-19 17:26:21 +00:00
Matt Hess 6efab82426 Fix BlockTemplate assignment operator missing Salvium-specific fields 2026-02-19 16:27:23 +00:00
Matt Hess cc960044f6 update BoringSSL win7 patch, upgrade RISC-V to ubuntu-24.04, expand macOS matrix 2026-02-19 16:17:28 +00:00
Matt Hess b9eaa797d9 Fix mainchain difficulty stubs causing consensus failure 2026-02-19 15:06:13 +00:00
Matt Hess de76c93b67 Suppress RandomX strict-overflow warnings in GCC compile and LTO link phases 2026-02-19 13:47:53 +00:00
Matt Hess 289bcc2d03 Import upstream fixes, IPv6 ZMQ support, submodule updates, RandomX prefetch perf tweaks, v2 VM work in progress and bug fixes 2026-02-19 13:35:59 +00:00
Matt Hess 218e04d80d retry unverified blocks after get_miner_data RPC 2026-02-19 02:42:48 +00:00
Matt Hess 7eac7d4542 Fix sync stall, C++17 compat, cppcheck shadow, and gate sync tests behind some CI checks 2026-02-19 01:42:21 +00:00
Matt Hess fedf09caa2 set proto tx hf height 2026-02-18 18:24:16 +00:00
Matt Hess d99e139f3a Defer block template construction until getblocktemplate RPC completes so treasury outputs are always present, treat RPC failures as fatal (no template built, retry on next ZMQ), fix txout_to_key parser missing unlock_time field 2026-02-18 17:44:24 +00:00
Matt Hess 336d15b8a5 Fix stale checkpoints on purge/genesis and BLOCK_BATCH_RESPONSE stall 2026-02-18 04:01:01 +00:00
Matt Hess cd90973f4a Fix peer protocol display for 1.6 2026-02-18 02:29:05 +00:00
Matt Hess 544176c964 include genesis in checkpoint creation 2026-02-18 02:09:56 +00:00
Matt Hess 6107ca6002 Remove protocol_tx_blob from sidechain data; keep only stub in mainchain 2026-02-18 01:58:57 +00:00
Matt Hess 357e73c4a6 Add Protocol 1.6 for batch block transfer and sidechain protocol_tx support 2026-02-17 19:33:50 +00:00
Matt Hess 7b10a617d4 Split sync test workflow into per-platform files 2026-02-17 18:48:39 +00:00
Matt Hess 662ad27186 Align params/constructor flow with upstream p2pool 2026-02-06 12:01:38 +00:00
Matt Hess c6ee991de7 Fix cppcheck warnings from params-file changes 2026-02-06 03:06:58 +00:00
Matt Hess 855e1df5b3 Fix member declaration order to match constructor initialization 2026-02-06 00:26:49 +00:00
Matt Hess b19b2a5d08 Initialize protocol_tx offset/size members in constructor 2026-02-05 23:52:36 +00:00
Matt Hess bb3fca1310 Fix clang-tidy hicpp-use-emplace warnings in args parsing 2026-02-05 21:26:09 +00:00
Matt Hess 9e36f2dfcf Fix clang-tidy narrowing conversion warnings in protocol_tx splice 2026-02-05 20:53:17 +00:00
Matt Hess e12419d79b Splice real protocol_tx at submit time, not template build time 2026-02-05 14:57:48 +00:00
Matt Hess 3b85ec3aba Gate block template on protocol_tx RPC
Wait for getblocktemplate RPC response before delivering templates
  to miners, ensuring the protocol_tx hash is correct in the PoW
  merkle root. All error paths fall back to empty protocol_tx so
  mining is never permanently stalled.

  Also bump ver to 4.16 and include upstream whitespace fix in tcp_server
2026-02-02 19:48:15 +00:00
Matt Hess 5ab43ff6d9 When Salvium yield/audit payouts mature, the daemon expects a non-empty
protocol_tx in submitted blocks. P2pool previously hardcoded an empty
   protocol_tx (0 outputs), causing block rejections with "Invalid number
   of outputs in protocol_tx".

   Now fetches the daemon's blocktemplate_blob via getblocktemplate RPC,
   parses out the real protocol_tx bytes, and uses them in the block
   template. Falls back to the empty protocol_tx when the RPC hasn't
   returned yet (correct for blocks with no payouts due).
2026-02-02 19:10:38 +00:00
Matt Hess f0b58de64a Add --log-file command line parameter 2026-01-21 22:20:47 +00:00
Matt Hess a5908e7560 Add --params-file support for config file based parameters 2026-01-21 20:11:41 +00:00
Matt Hess 828f7f3291 Pin cppcheck to stable release 2.19.0 v4.15 2026-01-21 02:37:51 +00:00
Matt Hess 221fc2a080 Update new version notification URL 2026-01-21 01:47:20 +00:00
Matt Hess 63467b2c52 Fix checkpoint validation using wrong range limit 2026-01-18 14:41:37 +00:00
Matt Hess a668fa33c2 Bump version to 4.15 2026-01-15 01:56:34 +00:00
Matt Hess 5d196ade1f Enhance mainchain reorg handling with mining pause and robust recovery 2026-01-14 18:31:37 +00:00
Matt Hess fe1f36c7fe Increase genesis wait, add 2nd seed, resolve circular checkpoint request issue 2026-01-14 05:30:33 +00:00
Matt Hess 36275a03c9 convert sync test to 3 parallel tracks 2026-01-13 01:51:42 +00:00
Matt Hess b20555e4ea Fix win7.patch empty line formatting 2026-01-13 01:47:02 +00:00
Matt Hess a967161de8 Fix corrupted win7.patch format for BoringSSL update 2026-01-13 01:28:12 +00:00
Matt Hess 11a5d3ff94 Fix cppcheck const warning and update BoringSSL win7 patch 2026-01-13 00:32:23 +00:00
Matt Hess 6c8b8894ee Fix TSan race on m_p2pServer during startup, update curl to 8.18.0 2026-01-12 21:48:10 +00:00
Matt Hess 67573992d2 Tune checkpoint interval to 100 blocks for better prune alignment 2026-01-12 20:11:01 +00:00
Matt Hess 67200d8457 Fix deadlock when trigger_recovery() called while holding sidechain lock, Add mainchain_height to checkpoints for smarter rollback during reorgs, Resume mining immediately after reset (network rebuilds via mining, not sync), Increase checkpoint history from 20 to 50 for deeper reorg coverage 2026-01-12 17:22:21 +00:00
Matt Hess 5e5fef537e Fix up chain resync deadlock during cascade failure 2026-01-12 16:19:52 +00:00
Matt Hess aa8075ee57 Update grpc/BoringSSL to v0.20251124.0 2026-01-03 23:30:00 +00:00
Matt Hess 04e9e29aea ● Port upstream p2pool fixes from v4.13
- RandomX: send seed hash in calc_pow RPC for faster daemon response
  - P2P: fix onion connection counter decrement for incomplete connections
  - P2P: give --addpeers peers a 2-second headstart before other connections
2026-01-03 18:16:57 +00:00
Matt Hess 066a30bfa7 cleaned up zmq timeout msg, made it less alarming, more poisson friendly 2026-01-03 18:02:35 +00:00
Matt Hess a3bdd74811 Fixed donation mode logging, fixed sidechain banner messaging/timing 2026-01-03 17:13:56 +00:00
Matt Hess d8dcac0927 increased name length on worker display, log err about torsion failing fcmp compatability 2025-12-31 00:59:47 +00:00
Matt Hess a6aa7c716d text fix v4.14 2025-12-29 18:40:10 +00:00
Matt Hess 690c66f8ad Fix workflow permission 2025-12-29 16:26:41 +00:00
Matt Hess 488af4ba75 Fix artifact task order issue 2025-12-29 14:40:19 +00:00