Commit Graph

1131 Commits

Author SHA1 Message Date
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
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
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 2025-12-29 18:40:10 +00:00
Matt Hess
c3de3e889f add support for manual triggering of gh actions 2025-12-29 00:34:12 +00:00
Matt Hess
c1b382c4f3 GH action update trigger 2025-12-29 00:18:58 +00:00
Matt Hess
08dcd0a640 release.yml:
- Fixed alpine builds (shell: alpine.sh --root for apk)
  - Added proper dependencies and comprehensive curl cmake options
  - Disabled gRPC for all release builds (not used by Salvium)
  - Updated macOS runners to macos-15-intel/macos-15

  CMakeLists.txt:
  - Changed WITH_GRPC default to OFF (merge mining not used)

  side_chain.cpp:
  - Cleaned up chain_recovery log formatting
2025-12-27 18:05:29 +00:00
Matt Hess
0654c7258d Changed debug logs from level 3 to level 5, fixed shadowVariable warning from LOG_CATEGORY macro, Added shadowVariable to cppcheck/suppressions, Fixed variable lock shadowing outer variable 2025-12-26 17:56:54 +00:00
Matt Hess
ea27306a79 Loglevel fix 2025-12-26 15:47:50 +00:00
Matt Hess
694c672d0c Fix chain_recovery to properly rebuild from checkpoint 2025-12-26 14:06:40 +00:00
Matt Hess
d4cd458cdf Guard fetch_mainchain_block calls with is_main_thread(), Speed up MSAN sync test 2025-12-25 17:44:55 +00:00
Matt Hess
e15fd5abf0 updated repo path, updated version 2025-12-25 04:54:53 +00:00
Matt Hess
63f277c5ae Port fix 37889→38889, Complete Salvium rewrite of README, Docker Salvium updates, XMRAmount → SALAmount, Merge mining warning 2025-12-25 03:45:19 +00:00
Matt Hess
b226260f56 Fix threading violation in block cache loading
Pass nullptr instead of uv_default_loop_checked() when deserializing
  cached blocks at startup. This skips parallel key pre-computation
  during the one-time cache load, avoiding a threading check that was
  failing on macOS arm64.

  The parallel optimization is only used during cache loading - normal
  runtime block processing from peers is unaffected.
2025-12-24 20:13:40 +00:00
Matt Hess
5ce7dbf9f0 Added empty check for pruned_blob before debug deserialize, Added exclusions for no connections to other p2pool nodes, m_transactionHashes is empty, calc_miner_tx_hash fast path 2025-12-24 18:35:01 +00:00
Matt Hess
4f4b3d4753 auto i → const auto, fix test_sync condition - previous setup would never pass based on new mining state conditional 2025-12-24 16:49:42 +00:00
Matt Hess
5f85d05f21 call_once fix, removed rx: OFF configs 2025-12-24 15:18:46 +00:00
Matt Hess
e15484c14c Fix sync test crash: add null terminators to seed_nodes 2025-12-24 05:05:22 +00:00
Matt Hess
3121932b17 Remove unused variable 'out_idx' in create_miner_tx, Add missingInclude to cppcheck suppressions for mx25519.h 2025-12-24 00:59:45 +00:00
Matt Hess
fbb73f9658 Fix unit test crashes for Carrot v1 block format 2025-12-23 23:33:32 +00:00
Matt Hess
506f670114 fixed length bug 2025-12-23 02:10:13 +00:00
Matt Hess
aa7c789743 Fixed sync test option, set default min diff 2025-12-23 01:34:53 +00:00
Matt Hess
72d7263e14 Fixed consensus ID format mismatch, riscv64 SIGSEGV, shadow variable 2025-12-22 22:45:35 +00:00
Matt Hess
33bb2a81a6 Added redis backend support for storage alternative to empower nextgen observer 2025-12-22 19:12:25 +00:00
Matt Hess
e68704dc43 Fix undeclared identifier 2025-12-21 21:11:38 +00:00
Matt Hess
71b12b0004 Cleanup Windows linker errors, Added null check in get_mx25519_impl, Fixed coverage pages copy 2025-12-21 17:30:06 +00:00
Matt Hess
53026f9a53 updated to use new zmq host w/ github fw rules to allow access 2025-12-20 20:01:49 +00:00
Matt Hess
f52792dd42 Fix uninitialized memory in Wallet logging 2025-12-20 16:48:59 +00:00
Matt Hess
248bb7fe6a Fix log.h static_assert error 2025-12-20 06:35:17 +00:00
Matt Hess
04d5d3634b Fix Windows MSVC compilation and cppcheck warnings, code struct triggers padding warnings 2025-12-19 20:57:48 +00:00
Matt Hess
d509947157 Fix potential division by zero in stratum target calculation, Refactored the nested division expression, intermediate variables with safety checks, prevents potential undefined
behavior that was causing UBSAN crashes
2025-12-19 00:29:18 +00:00
Matt Hess
328a145af7 Fixed linker errors for coverage.yml action, Fixed reorder error for test-sync.yml, Fixed const issues for cppcheck.yml, removed unused log_category_prefix var, Renamed prefix to addr_prefix 2025-12-18 01:04:32 +00:00
Matt Hess
4ddfa22d1b Fixed implicit widening multiplication error, Removed unused "this", Fixed narrowing conversion, Made m_verified and m_invalid mutable, Removed else-after-return, Removed unused num_full_blocks and last_block_size var all to make clang-tidy happy 2025-12-18 00:52:40 +00:00
Matt Hess
9266f28d22 fix one critical bug and mostly code quality/cleanup items for portability, minor cleanup for compile on mac, fixed null check, Remove redundant TX_VERSION check 2025-12-17 22:53:56 +00:00
Matt Hess
0c31e9ae5f Fix checkpoint exchange to support rolling upgrades, fixed silent lag startup period, Mixed v4.12/v4.13 peers coexist 2025-12-17 17:48:20 +00:00
Matt Hess
a2bf43c0e6 fix post start sync hang 2025-12-17 05:54:30 +00:00
Matt Hess
7441b02aff added donation state tracking, proper entering and exiting message, every 720 blocks on mainchain or 0.139% 2025-12-17 05:28:30 +00:00
Matt Hess
184d05e40b added mainchain prefetch, ADDRESS_LENGTH buffer overflow fixed, Salvium address validation messages corrected 2025-12-17 04:30:53 +00:00
Matt Hess
b4c482b6ef mx25519 linking - Added to STATIC_LIBS, Windows format strings, macOS sprintf, remove unused variable for mac and bsd compiler happiness, ADDRESS_LENGTH fix 2025-12-17 04:06:55 +00:00
Matt Hess
27dfd4788b fixing C/C++ CI errors 2025-12-17 03:28:41 +00:00
Matt Hess
79e34fdfbb fixed version handshake and display 2025-12-17 02:29:17 +00:00
Matt Hess
8c6961ca71 Fixed race condition with mainchain prefetch on startup, Version-gated checkpoint exchange for backward compatibility, Version bump to v4.13 with protocol 1.5, Added CAP exchange protocol (CHECKPOINT_REQUEST/CHECKPOINT_RESPONSE) 2025-12-17 01:54:52 +00:00