Commit Graph

704 Commits (7b02c3d24a43b922b2568c883009df40e4aab013)

Author SHA1 Message Date
SChernykh f4a18726b5 P2PServer: support future major protocol changes 2023-08-04 15:52:28 +02:00
SChernykh 2ddb03e2be CI: tweaked memory leak output formatting 2023-07-19 16:15:48 +02:00
SChernykh 0f88640575 CI: added sync test with memory leak detection 2023-07-19 13:59:57 +02:00
SChernykh 75cc82ae0c P2PServer: removed protocol version check for fastest peer 2023-07-12 12:48:52 +02:00
SChernykh 32dc235aa5 SideChain: fix for out of order blocks 2023-07-12 00:25:37 +02:00
SChernykh 6ffe1d81c2 P2PServer: ignore protocol versions higher than supported 2023-07-10 20:13:37 +02:00
SChernykh 5b245e64d3 Fixed a typo 2023-07-10 16:54:01 +02:00
SChernykh a067361d74 P2PServer: prefetch 2 blocks ahead during sync 2023-07-10 15:44:18 +02:00
SChernykh a7f66c8883 SideChain: filter duplicates from missing blocks 2023-07-10 14:11:22 +02:00
SChernykh e03e7d831e P2PServer: tweaked switching to the fastet peer when syncing 2023-07-10 11:40:48 +02:00
SChernykh 1219ed0dd6 P2PServer: check protocol version when choosing fastest peer 2023-07-07 23:49:43 +02:00
SChernykh fe2ff95f19 P2PServer: use BLOCK_NOTIFY to speed up syncing 2023-07-07 16:48:28 +02:00
SChernykh d72f0ce40c P2PServer: fixed some excess block requests 2023-07-07 14:52:47 +02:00
SChernykh df43e2c126 SideChain: tweaked precalc logic 2023-07-07 14:21:52 +02:00
SChernykh d8ecc1174d P2PServer: refactored BLOCK_NOTIFY logic
- Limit how many block requests can be in flight
- Don't send requests for the same block twice
2023-07-07 12:14:24 +02:00
SChernykh 3e269b49d4 Tweaked log level for BLOCK_NOTIFY 2023-07-05 19:06:49 +02:00
SChernykh 72c9f3b0db Fixed ping time calculation 2023-07-05 15:29:54 +02:00
SChernykh 2f5b0db786 P2PServer: request blocks coming from BLOCK_NOTIFY 2023-07-05 11:42:34 +02:00
SChernykh 8d9f16c387 P2PServer: sanity check message id 2023-07-04 16:47:14 +02:00
SChernykh d6cb0ee8a0 P2PServer: avoid unnecessary block broadcasts 2023-07-04 16:06:01 +02:00
SChernykh 5444701c38 Tweaked `status` code
Don't create stream when it's not needed
2023-07-02 15:33:51 +02:00
SChernykh 396479c2bf Fixed cppcheck errors 2023-07-02 13:10:05 +02:00
SChernykh d78885dcd4 p2pool v3.5 2023-06-30 18:05:12 +02:00
SChernykh ede72ff1d8 Suppress a noisy Coverity warning 2023-06-30 16:18:02 +02:00
SChernykh e5bf27030d Rate limit peer list requests
Send an empty response if the request comes too soon
2023-06-29 18:20:07 +02:00
SChernykh 375bf56e2e Fixed null characters in `print_hosts` output 2023-06-29 10:52:42 +02:00
SChernykh f79be1b343 Removed unnecessary lock 2023-06-27 17:09:58 +02:00
SChernykh 3554adf0c1 Refactored string conversions
Use `log::Stream` everywhere
2023-06-27 14:29:19 +02:00
SChernykh 3759fd4ac4 Code cleanup 2023-06-22 09:26:05 +02:00
SChernykh 1c7646f98f ZMQReader: make sure monitor always shuts down 2023-06-20 16:53:03 +02:00
SChernykh 1b9d14e89d Get ping times for all hosts 2023-06-19 17:56:53 +02:00
SChernykh a9a2113ea4 Code cleanup 2023-06-18 16:47:31 +02:00
SChernykh b5fa34e1a1 Added support for multiple Monero hosts
Switch to the next host in list when P2Pool thinks current host is stuck or lagging
2023-06-18 12:56:27 +02:00
SChernykh 30560e6cf8 CI: use compile command database for clang-tidy 2023-06-15 10:36:42 +02:00
SChernykh 8b4f05dc78 CI: added clang-tidy 2023-06-14 14:40:12 +02:00
SChernykh 950330b5f7 SideChain: recover from incorrect PoW calculation 2023-06-14 11:22:55 +02:00
SChernykh 9927718e25 Tweaked cppcheck command line 2023-06-13 11:53:41 +02:00
SChernykh b7ff4f2c2c Set default JSON parser flags 2023-06-12 15:29:23 +02:00
SChernykh 47c79459a6 Fixed `get_miner_data` error handling
Second call was a no-op because of `m_getMinerDataPending`
2023-06-10 14:49:33 +02:00
SChernykh 143960937e p2pool v3.4 2023-05-31 18:11:01 +02:00
SChernykh ee16ce10c1 Tweaked `block_seen` logic 2023-05-31 17:03:45 +02:00
SChernykh 738b2e416e ZMQ: log internal listening port 2023-05-30 12:58:03 +02:00
SChernykh b96dfa602b ZMQ: use random port for internal use 2023-05-29 14:37:20 +02:00
SChernykh 9d6f232dd1 Tweaked `block_seen` logic 2023-05-29 14:13:11 +02:00
SChernykh 183bab110e Refactored log writer 2023-05-26 11:19:39 +02:00
SChernykh beea3e2184 Fixed cppcheck error 2023-05-26 07:48:38 +02:00
SChernykh e0a3add5f2 Refactored is_localhost() 2023-05-26 00:02:15 +02:00
SChernykh 2cdb8b5323 P2PServer: fixed use after free on shutdown 2023-05-25 10:11:24 +02:00
SChernykh 3d526cebbc Enabled MemorySanitizer 2023-05-25 07:32:33 +02:00
SChernykh 5f7ce28682 TCPServer: fixed send callback arguments 2023-05-24 13:46:05 +02:00
SChernykh 3fdadf3eb5 Fixed cppcheck errors 2023-05-23 20:11:00 +02:00
SChernykh cd57ab6ad9 Fixed `UV_THREADPOOL_SIZE` setting
putenv can't use stack buffer
2023-05-23 19:14:15 +02:00
SChernykh eab8a51bb7 SideChain: tweaked `m_seenBlocks` cleanup logic 2023-05-22 15:30:57 +02:00
SChernykh dbb4efb98a Added `version` console command 2023-05-20 15:51:36 +02:00
SChernykh a83d6deec1 Check node ping at startup 2023-05-18 10:33:27 +02:00
SChernykh f212de64f5 P2PServer: fixed peer list request logic 2023-05-18 09:39:04 +02:00
SChernykh 6a4583f758 Sync test: keep running for 2 minutes more 2023-05-18 00:28:49 +02:00
SChernykh 325f2dc22f Sync test: run with TSAN on Ubuntu 2023-05-17 23:06:54 +02:00
SChernykh b20db0a117 P2PServer: always send peer list request to new peers 2023-05-17 11:13:25 +02:00
SChernykh 3c7fcf65a9 Fixed DNS TXT parsing 2023-05-12 15:41:02 +02:00
SChernykh 4fa344a0f7 Refactored DNS TXT resolver code 2023-05-12 10:37:58 +02:00
SChernykh bba4f8d0c5 Fixed headers for res_query 2023-05-11 09:21:10 +02:00
SChernykh be8b38e5cf Changed BLOCK_FOUND wording 2023-05-11 08:07:05 +02:00
SChernykh db9e5ba332 P2PServer: prefer DNS TXT records to load seed nodes 2023-05-10 22:07:35 +02:00
SChernykh 689fa14cfd Fixed cppcheck errors 2023-05-10 10:35:23 +02:00
SChernykh 8a222d5e75 TCPServer: check if loop thread is running before waiting for it 2023-05-01 20:13:57 +02:00
SChernykh fcb62894a5 p2pool v3.3 2023-04-30 16:04:32 +02:00
SChernykh c94b627808 TCPServer: use /64 prefix to ban IPv6 peers 2023-04-27 10:28:32 +02:00
SChernykh 98b2d2057c SideChain: fixed data race 2023-04-24 20:23:45 +02:00
SChernykh 98a9eb4f18 Console: fixed data race 2023-04-24 20:06:56 +02:00
SChernykh 76c3e89faf StratumServer: update api more often 2023-04-24 12:44:50 +02:00
SChernykh abf48fde02 Stratum API: added block reward share percent 2023-04-24 11:45:02 +02:00
SChernykh b498084388 SideChain: fixed a rare sync bug
P2Pool could fail to sync if uncles of depth 3 were present at a certain depth in the chain
2023-04-22 19:01:17 +02:00
SChernykh 75c156578c SideChain: tweaked precalculation during sync 2023-04-22 18:00:31 +02:00
SChernykh 51a075c0df P2PServer: fixed buf_size checks 2023-04-21 14:59:47 +02:00
SChernykh 8bf045974f BlockTemplate code refactoring
- Moved block constants to one place
- Tuned block template max transaction limiter
2023-04-21 11:13:48 +02:00
SChernykh 44d2005ab1 Console: returned stdin check to constructor 2023-04-20 10:59:32 +02:00
SChernykh 5f18eed14d Fixed compilation error 2023-04-19 22:44:38 +02:00
SChernykh 7a83fd2f30 Console: check stdin handle early at startup 2023-04-19 21:09:28 +02:00
SChernykh 6e258bb210 Refactored TCPServer to reduce code duplication 2023-04-19 16:37:32 +02:00
SChernykh 72adfd3126 Console: added local api 2023-04-18 17:01:00 +02:00
SChernykh 196b27f3b2 Console: read commands via localhost TCP 2023-04-18 16:19:12 +02:00
SChernykh 14ab9f462a Fixed command line parsing 2023-04-17 23:28:03 +02:00
SChernykh 93365973a7
Merge pull request #253 from hinto-janai/master
Add `--version`
2023-04-17 20:02:01 +02:00
hinto.janai 950ecd6bbc
add `--version` 2023-04-17 10:55:53 -04:00
SChernykh 8420f5f1b1 TCPServer: reduced write buffer reallocations 2023-04-17 16:22:46 +02:00
SChernykh 6ef166ba33 Fixed cppcheck errors 2023-04-14 12:38:14 +02:00
SChernykh 2d76846d3c Removed unused <iostream> 2023-04-05 14:47:44 +02:00
SChernykh f6cc7abac9 Fixed cppcheck error 2023-04-05 14:13:48 +02:00
SChernykh 92827035e0 p2pool v3.2 2023-03-31 18:30:34 +02:00
SChernykh 5f7b8c3371 Fixed cppcheck false positives 2023-03-31 13:35:23 +02:00
SChernykh 03eddddc0e Cache: save data from previous Monero block too
To improve caching of stale/outdated sidechain blocks.
2023-03-31 12:59:11 +02:00
SChernykh 080fbaa26c Util: adder PerfTimer 2023-03-30 19:09:15 +02:00
SChernykh f6a285de87 API: added PPLNS window size to pool stats 2023-03-28 13:53:52 +02:00
SChernykh 55e4ea0277 API: added sidechain diff and height to pool stats 2023-03-28 11:40:43 +02:00
SChernykh bb80fe12a0 Added a check for unstable hardware 2023-03-28 10:27:27 +02:00
SChernykh 5c67f0df20 P2PServer: truncate too long peers list in api 2023-03-27 12:15:33 +02:00
SChernykh 3697c079fa Fixed cppcheck error 2023-03-27 11:47:48 +02:00
SChernykh 2e6041dcf5 P2PServer: add local api data 2023-03-27 11:16:57 +02:00
SChernykh 645de31fe3 SideChain: stricter checks in `get_difficulty` 2023-03-24 13:26:30 +01:00