Commit graph

289 commits

Author SHA1 Message Date
68abe04340
Refresh stratum template every consensus block time seconds
All checks were successful
continuous-integration/drone/push Build is passing
2024-04-08 14:10:38 +02:00
83d8db23d5
Prevent stratum new tx message from being printed if not added to mempool 2024-04-08 14:07:26 +02:00
3cde3800de
Allow stratum mempool selection to include high fee transactions or time since last reception
All checks were successful
continuous-integration/drone/push Build is passing
2024-04-08 13:59:11 +02:00
24ea120fcf
Version v3.3.0
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2024-04-07 20:24:21 +02:00
142a21861e
Replace json hex strings with types.Hash and types.Bytes on monero rpc
All checks were successful
continuous-integration/drone/push Build is passing
2024-04-07 20:19:12 +02:00
c999597d5e
Remove moneroutil dependency, replace base58 encoding with git.gammaspectra.live/P2Pool/monero-base58 2024-04-07 19:15:00 +02:00
6cfb1e3905
Cleanup zmq / duplicate mempool types 2024-04-07 17:25:29 +02:00
791345c3e7
Added PubKeyToTable cache hits on sidechain test
All checks were successful
continuous-integration/drone/push Build is passing
2024-04-07 05:31:26 +02:00
b138b39ab5
Use bits.Mul64 on p2p challenge 2024-04-07 04:36:23 +02:00
d2187564ca
Fallback on mempool GetBlockReward to non-overflow code 2024-04-07 04:36:23 +02:00
4efc1663a7
Fix mempool Pick() replacement
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2024-04-06 15:27:15 +02:00
c733aa1d4f
Fix mempool and monero GetBlockReward
All checks were successful
continuous-integration/drone/push Build is passing
2024-04-06 05:36:44 +02:00
7bb1fd1316
Fix mempool picking index
All checks were successful
continuous-integration/drone/push Build is passing
2024-04-06 05:05:57 +02:00
faa9f504b6
Remove log usages from stratum server 2024-04-06 04:51:45 +02:00
d474745baf
consensus v3.2.0
All checks were successful
continuous-integration/drone/tag Build is passing
continuous-integration/drone/push Build is passing
2024-04-06 04:28:23 +02:00
019375e929
Experimental: Stratum server, template generation, uncle and transaction selection
Some checks are pending
continuous-integration/drone/push Build is running
Specify wallet address on login user in xmrig or similar
2024-04-06 03:59:03 +02:00
2627e6b574
Add Consensus SeedNodes() method 2024-04-06 03:04:22 +02:00
775f880a2f
consensus v3.1.0
Some checks are pending
continuous-integration/drone/push Build is running
continuous-integration/drone/tag Build is passing
2024-04-05 18:13:50 +02:00
61cfc4478c
Match deep block behavior in missed spot from b498084388 2024-04-05 18:13:50 +02:00
878d9df69b
Annotate and hash test data, include README, download from local mirror of p2pool 2024-04-05 18:13:46 +02:00
355843d5a2
Remove not necessary utilities under utils/, annotate network utils, use fasthex across all project 2024-04-05 17:14:37 +02:00
13d2e51383
Update dependencies, use faster UnsafeVarTimeScalarBaseMult on non-private operations, use precomputed UnsafeVarTimeScalarMultPrecomputed on public keys
All checks were successful
continuous-integration/drone/push Build is passing
2024-04-05 10:54:04 +02:00
fe75cf259c
P2Pool consensus v3.0.0
All checks were successful
continuous-integration/drone/tag Build is passing
continuous-integration/drone/push Build is passing
Migrate cmd utils, cmds to own repository
2024-04-03 19:43:13 +02:00
bd934bb5a3
Remove go.mod from p2pool/cache 2024-04-03 19:10:42 +02:00
50e1acbb3a
Upgrade to new logger format
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-26 21:24:37 +01:00
4d9f99747b
Use new Go 1.22 features: newinliner and math/rand/v2 2024-02-26 19:07:14 +01:00
86b7a92334
Added basic global logger 2024-02-26 04:09:27 +01:00
cd26934d16
Fix nil dereference in server peerlist
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-25 22:16:52 +01:00
01369eb4c8
Prevent NaN on division by zero on sidechain_test on pre-fork chains
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-25 14:21:57 +01:00
ddd821c565
Update to Go 1.22 2024-02-23 13:11:58 +01:00
4de201775d
Set precalc finished on sync for early start 2024-02-23 13:11:58 +01:00
c1486efa7d
Fix nil dereference on peerList comparison with dupe adresses 2024-02-23 13:11:58 +01:00
30623dbd55
Added cmd/apitocache tool
All checks were successful
continuous-integration/drone/push Build is passing
2023-11-04 22:34:42 +01:00
7c3e71171f
Fix mismatching encode methods for PoolBlock on connectivity-check API
All checks were successful
continuous-integration/drone/push Build is passing
2023-07-31 22:35:58 +02:00
cbb029cca7
Fix: compact message
All checks were successful
continuous-integration/drone/push Build is passing
2023-07-31 21:52:36 +02:00
43a7603e0f
Only apply last known tip on p2p client after pre processing
Some checks are pending
continuous-integration/drone/push Build is running
2023-07-31 21:47:35 +02:00
f49f52a853
Check capabilities of own server before sending anything that requires it 2023-07-31 21:40:36 +02:00
d52710eea4
Only store last known tip on p2p peer when it's equal to or higher as current 2023-07-31 19:42:50 +02:00
aae149677a
Move Coinbase Id cache into PoolBlock from CoinbaseTransaction
All checks were successful
continuous-integration/drone/push Build is passing
2023-07-30 22:53:25 +02:00
010a2a0d03
Replace https://github.com/goccy/go-json with https://github.com/WeebDataHoarder/go-json to allow omitempty on custom structs
All checks were successful
continuous-integration/drone/push Build is passing
2023-07-30 16:05:28 +02:00
cff3d620de
Update p2p client LastKnownTip on BlockNotify 2023-07-30 13:36:11 +02:00
deb3c6db01
Id -> id in consensus json
All checks were successful
continuous-integration/drone/push Build is passing
2023-07-25 09:05:38 +02:00
f9903f096d
Made ShareVersion an uint8 instead of int to match Monero hardfork version 2023-07-25 08:57:03 +02:00
b601e49a8a
Refactor pool_info API, deprecate several fields 2023-07-25 08:50:18 +02:00
e7e1aee11b
Fix channel on miner page for unknown miners, switch order of comparisons on NextDifficulty
All checks were successful
continuous-integration/drone/push Build is passing
2023-07-24 19:48:44 +02:00
07d09286e9
Faster hex SIMD Encode/Decode 2023-07-24 13:26:18 +02:00
e32a5e5d74
Speedup raw / coinbase block fetch from API via index instead of archival usage
All checks were successful
continuous-integration/drone/push Build is passing
2023-07-24 11:48:01 +02:00
03f19ae2ed
Improve base58 encode/decode and PackedAddress storage
Some checks are pending
continuous-integration/drone/push Build is running
2023-07-23 01:02:43 +02:00
c0397bea86
Moved cache into its own module
Some checks are pending
continuous-integration/drone/push Build is running
2023-07-22 17:15:43 +02:00
402bd79c6c
Use go.work and nested modules to split dependency import 2023-07-22 16:02:38 +02:00
4ec4872194
Slow DownloadMissingBlocks updates after initial sync from one per second to one every two minutes
All checks were successful
continuous-integration/drone/push Build is passing
2023-07-22 01:13:01 +02:00
b0fe55c8a8
Update to protocol 1.2, implement BlockNotify
* Bump Software version to 3.0
* Remove old fast sync extension
* SideChain: fix for out of order blocks
* SideChain: shuffle blocks in tests
2023-07-21 16:20:41 +02:00
00f5956897
Speedup p2pool archive API by hinting existing template id on /archive/block_by_main_id 2023-07-21 11:49:41 +02:00
5bffb7f43d
Reword and split GetDifficulty on SideChain utils 2023-07-21 00:48:28 +02:00
c1939598a5
Speedup deterministic key checks 2023-07-20 07:40:19 +02:00
c3cf2161bd
Less allocations on SplitReward by default, small speedup changes 2023-07-20 07:40:19 +02:00
894ebbba1b
Speedup Difficulty Cmp / Add / Mul64, consensus Uncle Penalty method 2023-07-20 07:40:19 +02:00
d7532fedd3
Update dependencies, fix wrapping operations on difficulty, reduce number of template hashes on verify, catch panics on external block add 2023-07-20 07:40:19 +02:00
b57226c7ed
Speedup iteration of blocks in sidechain using iterationCache 2023-07-20 07:40:19 +02:00
5c24136e45
Speedup GetShares, Shares allocation, Shares.Compact 2023-07-20 07:40:19 +02:00
152cbc54c2
Implement utils.NthElementSlice to use QuickSelect, improves GetDifficulty 2023-07-20 07:40:19 +02:00
90184b07cc
GetDifficulty / GetShares speedup 2023-07-20 07:40:19 +02:00
ac3d6b6141
Added faster pruneBlocks implementation 2023-07-20 07:40:19 +02:00
704b477c37
Slightly faster CompareConsensusPublicKeyBytes calls 2023-07-20 07:40:19 +02:00
c4053f3480
Faster pool block iteration backwards via PoolBlock iteration cache, added benchmark to SideChain 2023-07-20 07:40:19 +02:00
4ef60296f1
Updated to Go 1.21
* Replaced exp/slices and exp/maps with slices/maps implementation
* Replaced utils.Min/Max with min/max
* Introduced GOEXPERIMENT=loopvar on build steps
* Updated tests/docker-compose to go1.21-rc-alpine
* Updated nginx to 1.25
* Preallocate mined blocks on Sidechain
* Update edwards25519 version
2023-07-20 07:40:18 +02:00
4376c41511
Optimize struct alignment and memory size across the project 2023-06-14 17:26:46 +02:00
89339ee88a
Replace golang map with https://github.com/dolthub/swiss on sidechain/mainchain 2023-06-10 01:31:42 +02:00
bad1e302c8
Added sidechain GetPossibleUncles() method
All checks were successful
continuous-integration/drone/push Build is passing
2023-06-05 23:46:34 +02:00
4ed83d58f5
Allow 0/0 peers setting for debugging, check outgoing connections in monerod reconnect loop 2023-06-05 23:46:16 +02:00
29751ec74d
Prevent heap allocations in block encoding/decoding/generation of keys 2023-06-05 23:45:38 +02:00
209decd5b7
Do not allow empty spend and view pubkeys in side data 2023-06-05 23:44:54 +02:00
03ff13fc0c
added merkle tree MainBranch precalculation method, mempool utilities and handling, UVarInt64SliceSize, Share utilities 2023-06-05 23:44:24 +02:00
9b241e22db
Changed how blocks are iterated from sidechain 2023-06-05 23:42:53 +02:00
1b04de234c
Changed how consensus Id is generated 2023-06-05 23:41:32 +02:00
5ab76f5503
Calculate precise buffer lengths using varint sizes 2023-06-03 23:33:13 +02:00
0cd75a0509
added limitbytereader to utils, less buffer usage on block decoding 2023-06-03 10:05:05 +02:00
8d779e9cbc
refactored sidechain testdata initialization, web stream request api 2023-06-03 10:05:05 +02:00
2fe65a7a62
ZMQ: Use serial method instead of channels to preserve ordering of events 2023-05-31 12:26:11 +02:00
27f65692be
Added sidechain ShuffleSequence utils, loop DownloadMissingBlocks on Server until no more are found
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-31 01:55:34 +02:00
8b864628f0
fix sidechain test: provide Context on fake server
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-30 09:44:01 +02:00
cd99095931
New utilities and additions for types / sidechain
Some checks failed
continuous-integration/drone/push Build is failing
2023-05-30 08:49:52 +02:00
25f58426a7
sidechain: err on child depth issue 2023-05-29 16:01:41 +02:00
f4c21dc425
Add hardcoded default pool name case in Consensus 2023-05-29 10:25:55 +02:00
bf30f7592e
Verify and warn inconsistent depths on sidechain 2023-05-29 10:25:55 +02:00
e94e54c27d
fix genesis share private key seed check 2023-05-29 09:09:03 +02:00
d577856081
Faster JSON encoder/decoder
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-27 14:43:22 +02:00
493b482d90
Do not require p2pool sync for API to start, cache p2api.Consensus() call 2023-05-25 14:47:25 +02:00
a2b701e87b
Register listeners for MainData / MinerData updates 2023-05-24 12:40:02 +02:00
52b2d617c0
Lock seenBlocks on cleanupSeenBlocks method
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-24 09:14:27 +02:00
009e507d5d
Fixed FullId TemplateId() method
Some checks are pending
continuous-integration/drone/push Build is running
2023-05-24 09:13:08 +02:00
48915be81b
Added tests for pre-fork p2pool, generalize tests, added patched missing blocks for old mini sidechain test
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-23 21:19:42 +02:00
951b1105ff
Speed improvements on partial crypto derivation
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-23 10:25:10 +02:00
2ad5e1ba38
Sync speed improvements by better crypto cache
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-23 09:38:09 +02:00
db5a26de4f
Resolve lock contention whenever bans occur with multiple clients connected
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-23 07:36:35 +02:00
099c393235
Added utils ContextTicker 2023-05-23 07:30:25 +02:00
69cfc3f3da
Cleanup seen blocks properly to prevent slow leak like p2pool had before eab8a51bb7a30813d4cd8f570486fbee034acdb8 2023-05-23 06:41:03 +02:00
3ac9b9f5bd
Track seen and alternate blocks, and submit these alternate blocks to monerod / other peers as well
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-22 11:11:55 +02:00
e9eb5915ed
Optimize address sorting, crypto cache, use unsafe VarTimeScalarMult for sidechain operations
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-20 10:49:05 +02:00
65383c34c3
Keep track of previous ban error on p2pool, report it on connectivity check
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-19 08:30:43 +02:00