Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
217 commits
Select commit Hold shift + click to select a range
3d58fb5
Clean up Waiting Requests as well to Avoid Goroutine Leaks (#4908)
GheisMohammadi Jun 6, 2025
bf7ad13
Fixed a downloaders logic bug preventing download triggers (#4909)
GheisMohammadi Jun 6, 2025
af91265
add new metrics to stream manager to track removals, stream errors an…
GheisMohammadi May 27, 2025
4c287f3
support new metrics in stream manager
GheisMohammadi May 27, 2025
b0b1a5c
add new metrics to request manager to track connected and available s…
GheisMohammadi May 27, 2025
69f3890
support new metrics in request manager
GheisMohammadi May 27, 2025
2343501
add protocol ID to request manager to be used in metric labels
GheisMohammadi May 28, 2025
84250ce
add proto ID to request manager tests
GheisMohammadi May 28, 2025
f902ebf
Limit p2p stream goroutines
GheisMohammadi May 29, 2025
692cfc8
Thread-Safe Stream Removal Info (#4905)
GheisMohammadi Jun 9, 2025
b2396e1
Build Static Linux Executable from macOS (#4852)
GheisMohammadi Jun 10, 2025
2e736d8
replace deprecated mplex and set default muxers to mplexC6 and yamux
GheisMohammadi May 14, 2025
a0a220e
fix muxer selection by checking lower case values
GheisMohammadi May 14, 2025
5c155d1
fix doGetBlocksByNumbersRequest log message
GheisMohammadi Jun 30, 2025
d403df3
Check if the requested blocks are future blocks in epoch sync
GheisMohammadi Jun 30, 2025
4c14558
add log for skipping a nil block during epoch sync
GheisMohammadi Jul 2, 2025
664056a
pre-compiling regex pattern as a package-level variable
GheisMohammadi Jul 2, 2025
af88ff1
set yamux as first priority muxer
GheisMohammadi Jun 27, 2025
18af74d
log which stream muxer is negotiated for each new connection
GheisMohammadi Jun 26, 2025
e6edb54
prefer trusted peers for streams
GheisMohammadi Jun 4, 2025
fa894db
fix cast host to harmony p2p host
GheisMohammadi Jun 9, 2025
d6c40d3
discoverAndSetupStream checks for hard low cap before adding more peers
GheisMohammadi Jun 9, 2025
d429028
Modified staged sync downloader to supply the complete host so truste…
GheisMohammadi Jun 11, 2025
79f3bef
fix peer id for discover and setup trusted peers
GheisMohammadi Jul 15, 2025
0c50304
fix: do not set consensus mode for epoch chain sync
GheisMohammadi Jul 17, 2025
d275a74
remove SetMode(Syncing) from spinUpStateSync
GheisMohammadi Jul 17, 2025
b59c1fa
add bls12-381 elliptic curve precompiles
GheisMohammadi Jul 3, 2025
1aa476c
add bls12-381 elliptic curve precompiles to params
GheisMohammadi Jul 3, 2025
f1e8937
add bls12-381 elliptic curve precompiles to contracts
GheisMohammadi Jul 4, 2025
bc21bec
fix conflicts between bls12381 package and its eth version
GheisMohammadi Jul 4, 2025
7613634
switch contracts tests to Berlin precompiled contracts
GheisMohammadi Jul 4, 2025
43ea567
add test for precompiled bls12381 G1 Add
GheisMohammadi Jul 4, 2025
2e21838
add test for precompiled bls12381 G1 Mul
GheisMohammadi Jul 4, 2025
b4f7867
add test for precompiled bls12381 G1 Mul Exp
GheisMohammadi Jul 5, 2025
39b5876
add test for precompiled bls12381 G2 Add
GheisMohammadi Jul 5, 2025
2058003
add test for precompiled bls12381 G2 Mul
GheisMohammadi Jul 5, 2025
05fe1d8
add test for precompiled bls12381 G2 Mul Exp
GheisMohammadi Jul 5, 2025
58ab610
add test for precompiled bls12381 Pairing
GheisMohammadi Jul 5, 2025
4391b08
add test for precompiled bls12381 Map G1
GheisMohammadi Jul 5, 2025
3f925db
add test for precompiled bls12381 Map G2
GheisMohammadi Jul 5, 2025
c67db97
add test for precompiled bls12381 G1 Add failures
GheisMohammadi Jul 5, 2025
b0d381e
add test for precompiled bls12381 G1 Mul failures
GheisMohammadi Jul 5, 2025
4524072
add test for precompiled bls12381 G1 Mul Exp failures
GheisMohammadi Jul 5, 2025
0842347
add test for precompiled bls12381 G2 Add failures
GheisMohammadi Jul 5, 2025
1570cd5
add test for precompiled bls12381 G2 Mul failures
GheisMohammadi Jul 5, 2025
d1b18b5
add test for precompiled bls12381 G2 Mul Exp failures
GheisMohammadi Jul 5, 2025
0489369
add test for precompiled bls12381 pairing failures
GheisMohammadi Jul 5, 2025
4ee06ec
add test for precompiled bls12381 Map G1 failures
GheisMohammadi Jul 5, 2025
2c22149
add test for precompiled bls12381 Map G2 failures
GheisMohammadi Jul 5, 2025
c637b91
move bls 12381 precompiles under eip-2537
GheisMohammadi Jul 5, 2025
88d477b
point contracts precompiled bls12381 to harmony bls12381
GheisMohammadi Jul 7, 2025
0aa4d4e
add arithmetic x86 deci and fallbacks
GheisMohammadi Jul 7, 2025
f3a39bb
add bls12381 variables and field elements
GheisMohammadi Jul 7, 2025
fad4ea8
add fp, fp2, fp6, fp12 to bls12381 precompiles
GheisMohammadi Jul 7, 2025
42560d8
add g1, g2 to bls12381 precompiles
GheisMohammadi Jul 7, 2025
0c3cead
add utils to bls12381 precompiles
GheisMohammadi Jul 7, 2025
9f0fa92
add pairing, swu, isogeny to bls12381 precompiles
GheisMohammadi Jul 7, 2025
3d03d98
add fp tests to bls-12381 precompiles
GheisMohammadi Jul 8, 2025
14543de
add g1, g2 tests to bls-12381 precompiles
GheisMohammadi Jul 8, 2025
f197f53
add field element tests to bls-12381 precompiles
GheisMohammadi Jul 8, 2025
b192daa
add pairing tests to bls-12381 precompiles
GheisMohammadi Jul 8, 2025
10109ac
add randScalar to bls-12381 precompiles
GheisMohammadi Jul 8, 2025
5474ea7
remove bls12-381 library from go.mod and go.sum
GheisMohammadi Jul 8, 2025
ae3c211
remove unsued frobenious coeffs
GheisMohammadi Jul 8, 2025
ff78be7
add mappings tests for zero inputs in bls12381 precompiles
GheisMohammadi Jul 8, 2025
d84a9cd
fix typo in arithmetic deci
GheisMohammadi Jul 8, 2025
3d78135
improve comments in bls12_381 precompiles
GheisMohammadi Jul 8, 2025
ee30266
fix the issue of swuParamsForG2
GheisMohammadi Jul 8, 2025
9cdcda5
swu, use single conditional for e2
GheisMohammadi Jul 9, 2025
8ab9d9a
delete empty line in utils
GheisMohammadi Jul 9, 2025
96c0285
use FromHex for string to big in utils
GheisMohammadi Jul 9, 2025
73ea9ba
g1, g2, strict length check for FromBytes
GheisMohammadi Jul 9, 2025
c664672
update field_element comparisions
GheisMohammadi Jul 9, 2025
646057c
change swu, isogeny constants with hex values
GheisMohammadi Jul 9, 2025
93613eb
fix point multiplication comments in core vm
GheisMohammadi Jul 10, 2025
b934581
fix multiexp gas calculation and lookup for g1 and g2
GheisMohammadi Jul 10, 2025
5953cb8
simpler imput length check for multiexp and pairing precompiles
GheisMohammadi Jul 10, 2025
451d4c5
remove empty multiexp result declarations
GheisMohammadi Jul 10, 2025
6355baf
remove modulus type definition
GheisMohammadi Jul 10, 2025
ccefd08
use proper init function in bls12381 precompiles
GheisMohammadi Jul 10, 2025
f86b1fa
fix precompiles contracts comment
GheisMohammadi Jul 10, 2025
72233f7
add functions to create random points for G1, G2, Pairing
GheisMohammadi Jul 14, 2025
7f2a31e
add eip-2537 epoch to configs
GheisMohammadi Jul 14, 2025
11beb60
check eip-2537 epoch in evm to set latest precompiles
GheisMohammadi Jul 14, 2025
fe40eb8
add RunWriteCapable and RequiredGas for eip2537 precompiles to contra…
GheisMohammadi Jul 14, 2025
d374dcf
add tests for BLS12-381 operations
GheisMohammadi Jul 14, 2025
90a485f
remove new lines at fatal desciprtions
GheisMohammadi Jul 14, 2025
dbb81ee
fix no-adx assembly multiplication in bls12381 precompiles
GheisMohammadi Jul 14, 2025
486f139
add bls12-381 elliptic curve precompiles
GheisMohammadi Jul 14, 2025
4a0b29c
update multiplication backend, change mul backend to 6limb eip1962 ba…
GheisMohammadi Jul 14, 2025
97552e3
fix: data storage corruption
Jul 18, 2025
7159d8d
use worst case scalar for input to G1/G2 mul benchmarks
GheisMohammadi Jul 21, 2025
eb200e7
move bls precompiles to correct addresses
GheisMohammadi Jul 21, 2025
46d26f2
fix comments in bls
GheisMohammadi Jul 21, 2025
e5c9c66
fix typos in bls12381 fp2, fp6
GheisMohammadi Jul 21, 2025
104e5cf
fix incorrect computation of discount
GheisMohammadi Jul 21, 2025
56dc59c
fix format in bls_12381 and isogency
GheisMohammadi Jul 21, 2025
962b528
Fix code comments and error msgs in bls12381
GheisMohammadi Jul 21, 2025
97170e7
fix comments for G1 Affine in bls12381
GheisMohammadi Jul 21, 2025
c75d47f
fix broken links to references for point addition/doubling formulas
GheisMohammadi Jul 21, 2025
bef6e9a
fix bls12381 precompile tests
GheisMohammadi Jul 21, 2025
3ecb671
feat(localnet) - add a possibillity to run extra nodes in already run…
mur-me Jul 24, 2025
8add834
resolve port conflicts in localnet extra nodes configuration
GheisMohammadi Jul 30, 2025
00c6bf3
remove extra comments from extra nodes config
GheisMohammadi Jul 30, 2025
eda68d4
Switch extra explorer node ports to 4301-4310 and 4401-4410 to avoid …
GheisMohammadi Jul 30, 2025
973754d
Merge pull request #4932 from harmony-one/fix/localnet_ports
mur-me Jul 30, 2025
c784326
use x86_64 docker image instead of arm
Jul 30, 2025
000665a
Merge pull request #4933 from sunwavesun/macos_build
sunwavesun Jul 30, 2025
c420763
remove mul precompiles in bls12381
GheisMohammadi Jul 25, 2025
bca889b
eip-2537: update pairing check cost
GheisMohammadi Jul 29, 2025
fac0ce0
eip-2537: update add and msm gas costs
GheisMohammadi Jul 29, 2025
b4025b3
Improve bad block redownload: skip already failed streams, enhance lo…
GheisMohammadi Jul 26, 2025
94550ce
StreamManager: do not remove trusted peers on critical error, improve…
GheisMohammadi Jul 28, 2025
06b58c5
StagedStreamSync: improve block hash validation, error handling, and …
GheisMohammadi Jul 28, 2025
2f32ecb
StagedStreamSync: enhance block validation, error handling, and bad b…
GheisMohammadi Jul 28, 2025
7b5c3d0
StagedStreamSync: refactor short range and epoch sync, improve target…
GheisMohammadi Jul 28, 2025
aae4066
fix: improve staged stream sync error handling and prevent nodes from…
GheisMohammadi Jul 29, 2025
fe59b96
Downloader: skip short-range sync logic for epoch chains to prevent s…
GheisMohammadi Jul 30, 2025
f605931
remove block height from stream sync logger
GheisMohammadi Aug 3, 2025
dc6fa0f
Change muxer logging from Info to Debug level
GheisMohammadi Aug 3, 2025
8776957
feat: Add comprehensive memory leak prevention to download manager
GheisMohammadi Aug 4, 2025
7d253d1
feat: Add stage-specific cleanup to prevent memory leaks
GheisMohammadi Aug 4, 2025
a7bc4d4
test: Add comprehensive tests for download manager memory leak preven…
GheisMohammadi Aug 4, 2025
37f71e8
feat: Add memory leak prevention to getBlocksByHashManager
GheisMohammadi Aug 4, 2025
7c7cf86
feat: Integrate getBlocksByHashManager cleanup in short range sync
GheisMohammadi Aug 4, 2025
28004fa
test: Add comprehensive tests for getBlocksByHashManager memory leak …
GheisMohammadi Aug 4, 2025
d155d4a
feat: Add memory leak prevention for InvalidBlock.StreamID and timings
GheisMohammadi Aug 4, 2025
7fd4008
test: Add comprehensive tests for InvalidBlock and timings memory lea…
GheisMohammadi Aug 4, 2025
093e684
refactor: reorganize sync services under api/service/synchronize/
GheisMohammadi Aug 5, 2025
ef0f341
refactor: remove old sync service locations
GheisMohammadi Aug 5, 2025
ff9ce08
feat: enable sync by default and rename Downloader to Client
GheisMohammadi Aug 5, 2025
4ffe22e
refactor: update imports and references for new sync service structure
GheisMohammadi Aug 5, 2025
ef2a139
remove extra comment from Sync configs
GheisMohammadi Aug 6, 2025
afd44e8
config: enable sync by default and improve migration logic
GheisMohammadi Aug 6, 2025
a1c7e4e
config: update flags and tests for sync configuration
GheisMohammadi Aug 6, 2025
3d3d921
test: update deployment script for new sync configuration
GheisMohammadi Aug 6, 2025
c8b725b
rename syncDownloaderFlag to syncClientFlag to match with its name
GheisMohammadi Aug 6, 2025
65ea62a
fix: improve crosslink heartbeat processing and reduce log noise
GheisMohammadi Jul 29, 2025
56abd7f
use defined epochSync var rather than call the getter
GheisMohammadi Aug 25, 2025
8f184d6
Add sync status check to filter cross-links by epoch before processing
GheisMohammadi Aug 25, 2025
782456d
Fix cross-link epoch validation: remove +1 tolerance for future epochs
GheisMohammadi Aug 25, 2025
cc79d6e
restore nodeCrossLinkMessageCounterVec metric tracking in crosslink p…
GheisMohammadi Aug 26, 2025
f56fbb8
enhance crosslink processing logs with beacon epoch, crosslink number…
GheisMohammadi Aug 26, 2025
2fb92d3
remove duplicated fields in cross link processing logs
GheisMohammadi Aug 26, 2025
0494e86
feat: implement progress-based timeout system for stream sync
GheisMohammadi Aug 18, 2025
0296924
fix: improve error handling for io.EOF in stream reading methods
GheisMohammadi Aug 18, 2025
9630d09
Fix progress tracker test failures
GheisMohammadi Aug 18, 2025
54e980d
Update progress tracker test file
GheisMohammadi Aug 18, 2025
a169636
feat: add EpochSyncTimeout for better epoch sync timeout management
GheisMohammadi Aug 19, 2025
5249f66
feat: update epoch sync stage with improved timeout and stream handling
GheisMohammadi Aug 19, 2025
d2577e5
feat: implement smart stream selection with failure-based prioritization
GheisMohammadi Aug 19, 2025
f0d9a69
feat: update stream timeout configuration with more aggressive settings
GheisMohammadi Aug 19, 2025
deac243
feat: enhance progress tracker with stalled detection and rate calcul…
GheisMohammadi Aug 19, 2025
c4b13fc
test: add comprehensive tests for new progress tracker methods
GheisMohammadi Aug 19, 2025
e98195d
feat: enhance stream health monitoring with better logging and stalle…
GheisMohammadi Aug 19, 2025
1c39345
feat: implement configurable chunk size for stream reading
GheisMohammadi Aug 21, 2025
0f72da7
Remove stream stall detection to prevent false warnings for fully syn…
GheisMohammadi Aug 22, 2025
8056053
fix: correct sync detection logic and add immediate status methods
GheisMohammadi Aug 22, 2025
7356639
fix: improve peer height query error handling and monitoring
GheisMohammadi Aug 22, 2025
baf3c8f
fix: enhance node sync loop with immediate status detection
GheisMohammadi Aug 22, 2025
5c0a70b
feat: extend ISync interface with immediate sync detection methods
GheisMohammadi Aug 22, 2025
b9f4504
fix: enhance RPC service sync status detection
GheisMohammadi Aug 22, 2025
df6755e
Fix redundant BlocksNotSynchronized call in downloadStartedLoop
GheisMohammadi Aug 23, 2025
2fd2722
Refactor progress tracker to focus solely on content reading progress
GheisMohammadi Aug 23, 2025
b0afc03
Update sync stream to use simplified progress tracker
GheisMohammadi Aug 23, 2025
8843c1d
Update progress tracker tests for simplified design
GheisMohammadi Aug 23, 2025
00de01e
Fix test compilation errors by implementing missing interface methods
GheisMohammadi Aug 23, 2025
4eda3bd
Fix progress tracking logic and remove unused code
GheisMohammadi Aug 23, 2025
3f5fc00
Fix stream reading progress tracking logic
GheisMohammadi Aug 23, 2025
b31e73f
Update sync stream health monitoring for improved timeout handling
GheisMohammadi Aug 23, 2025
91d6e79
Clean up config file formatting with goimports
GheisMohammadi Aug 23, 2025
88b4a01
improve staged stream sync block hashes stage log
GheisMohammadi Aug 25, 2025
560c596
complete sync state lifecycle that prevents cross-link processing fro…
GheisMohammadi Aug 26, 2025
b50d668
improve cross-link processing implementation
GheisMohammadi Aug 28, 2025
868d983
Update stage states to use UpdateBlockAndStatus to insert new blocks
GheisMohammadi Aug 28, 2025
a3f2361
feat: integrate setNodeSyncStatus for direct consensus sync status ma…
GheisMohammadi Aug 28, 2025
386a710
remove rollback from UpdateBlockAndStatus in staged stream sync
GheisMohammadi Aug 29, 2025
9748cc0
move leader verification in handleDownload
GheisMohammadi Aug 29, 2025
d6d0e0b
Remove GetParsedSyncStatusImmediate and related immediate sync detect…
GheisMohammadi Aug 29, 2025
7490d82
remove redundant stream checking in sync cycle
GheisMohammadi Aug 30, 2025
b66ec4b
fix comment for SyncStatus, it returns in sync status
GheisMohammadi Aug 30, 2025
42c3fb7
fix: resolve sync status semantic conflicts and improve error handling
GheisMohammadi Aug 30, 2025
99634ab
change block verification log in OnPrepared to Debug
GheisMohammadi Aug 31, 2025
bd17b95
check for min streams in case of downloader loop failures
GheisMohammadi Aug 31, 2025
c1911f9
fix: improve staged stream sync range switching and error handling
GheisMohammadi Sep 1, 2025
f9c8c5a
fix: prevent stream health monitor from closing idle streams in synce…
GheisMohammadi Sep 1, 2025
6eb9f4a
fix: update progress tracker tests to match new tracking behavior
GheisMohammadi Sep 1, 2025
10e34be
config: update shard count from 4 to 2 in all configuration files
GheisMohammadi Aug 5, 2025
d2949e2
rosetta: update shard count from 4 to 2 in mainnet and PSTN configura…
GheisMohammadi Aug 5, 2025
9f45caa
core: update shard count from 4 to 2 in VM tests and consensus constants
GheisMohammadi Aug 5, 2025
b1d5c4d
test: update shard count from 4 to 2 in test helpers and rclone script
GheisMohammadi Aug 5, 2025
032ff5e
wallet: update shard count from 4 to 2 and remove shard2/shard3 sections
GheisMohammadi Aug 5, 2025
56d83dd
fix: improve timeout warning logic and logging
GheisMohammadi Sep 7, 2025
b2375da
feat: optimize epoch chain sync with specialized staged sync pipeline…
GheisMohammadi Sep 12, 2025
b670705
fix: implement fallback RLP decoding for staged stream sync
GheisMohammadi Sep 13, 2025
1b4675d
Replace manual RLP decoding logic with existing core.RlpDecodeBlockOr…
GheisMohammadi Sep 16, 2025
a6a8f93
Improve error reporting in core.RlpDecodeBlockOrBlockWithSig
GheisMohammadi Sep 16, 2025
85254d6
fix: correct mutex usage in consensus logic to prevent potential dead…
Frozen Sep 23, 2025
6603037
Enhancement of Cache Management in Staged Stream Sync (#4956)
GheisMohammadi Oct 15, 2025
c879a9a
refactor(rosetta): silence the rossetta stdout logs by default, make …
mur-me Oct 21, 2025
0dddb24
Optimize sync status double-check with early exit for far behind nodes
GheisMohammadi Oct 21, 2025
43a287f
Use fast sync check for leaders and double-check for non-leaders
GheisMohammadi Oct 21, 2025
c2d0f2f
Add retry mechanism for leader nodes in staged stream sync downloader…
GheisMohammadi Oct 23, 2025
394d36f
updated gencodec version to v0.1.1 (#4948)
Frozen Oct 31, 2025
b931b99
Improve Trusted Nodes Handling; Auto-populate from DNS Node
GheisMohammadi Nov 3, 2025
e0cd8fb
Improve trusted nodes metrics, add new metrics to stream manager
GheisMohammadi Nov 5, 2025
47075bb
fix trusted node tests
GheisMohammadi Nov 5, 2025
d6ffe86
fix: standardize trusted peer metrics registration
GheisMohammadi Nov 6, 2025
06a80ba
Improve metrics related to host, streams and trusted nodes
GheisMohammadi Nov 7, 2025
b16797d
fix: resolve trusted peers stream level counter issue
GheisMohammadi Nov 11, 2025
44a1ec1
add numReservedTrustedPeerStreamsGaugeVec metric, refactor trusted pe…
GheisMohammadi Nov 12, 2025
ce6f0fe
refactor trusted peers detection and metrics, improve trusted peers logs
GheisMohammadi Nov 14, 2025
f8a949a
fix goimports on sync stream tests
GheisMohammadi Nov 17, 2025
4126c2a
Fix race condition in TestRequestManager_RemoveStream (#4966)
GheisMohammadi Nov 18, 2025
922ec9f
Merge pull request #4962 from harmony-one/fix/trusted_nodes
GheisMohammadi Nov 18, 2025
31752f2
Update 1.10: London and Berlin forks (#4953)
Frozen Nov 20, 2025
e0522b6
enable stream sync client by default for devnet and testnet (#4961)
GheisMohammadi Nov 20, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/build-docker-proto-image.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@ jobs:
- name: Build and push
uses: docker/build-push-action@v6
with:
context: ./harmony/api/service/legacysync/downloader
file: ./harmony/api/service/legacysync/downloader/Proto.Dockerfile
context: ./harmony/api/service/synchronize/legacysync/downloader
file: ./harmony/api/service/synchronize/legacysync/downloader/Proto.Dockerfile
push: true
platforms: linux/amd64,linux/arm64
tags: |
Expand Down
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -76,9 +76,11 @@ blspass.txt
# local test db
db-127.0.0.1-*

# dht storage
# dht and peer storage
.dht
.dht-*
.ps
.ps-*
.tern-port

# testdata
Expand Down
20 changes: 2 additions & 18 deletions .hmy/wallet.ini
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ bootnode = /ip4/100.26.90.187/tcp/9874/p2p/Qmdfjtk6hPoyrH1zVD9PEH4zfWLo38dP2mDvv
bootnode = /ip4/54.213.43.194/tcp/9874/p2p/QmZJJx6AdaoEkGLrYG4JeLCKeCKDjnFz2wfHNHxAqFSGA9
bootnode = /ip4/13.113.101.219/tcp/12019/p2p/QmQayinFSgMMw5cSpDUiD9pQ2WeP6WNmGxpZ6ou3mdVFJX
bootnode = /ip4/99.81.170.167/tcp/12019/p2p/QmRVbTpEYup8dSaURZfF6ByrMTSKa4UyUzJhSjahFzRqNj
shards = 4
shards = 2
network = mainnet

[main.shard0.rpc]
Expand All @@ -15,14 +15,6 @@ rpc = s0.t.hmny.io:14555
rpc = l1.t.hmny.io:14555
rpc = s1.t.hmny.io:14555

[main.shard2.rpc]
rpc = l2.t.hmny.io:14555
rpc = s2.t.hmny.io:14555

[main.shard3.rpc]
rpc = l3.t.hmny.io:14555
rpc = s3.t.hmny.io:14555

[local]
chain_id = 2
bootnode = /ip4/127.0.0.1/tcp/19876/p2p/Qmc1V6W7BwX8Ugb42Ti8RnXF1rY5PF7nnZ6bKBryCgi6cv
Expand Down Expand Up @@ -59,7 +51,7 @@ rpc = s1.b.hmny.io:14555
chain_id = 3
bootnode = /ip4/54.86.126.90/tcp/9889/p2p/Qmdfjtk6hPoyrH1zVD9PEH4zfWLo38dP2mDvvKXfh3tnEv
bootnode = /ip4/52.40.84.2/tcp/9889/p2p/QmZJJx6AdaoEkGLrYG4JeLCKeCKDjnFz2wfHNHxAqFSGA9
shards = 4
shards = 2
network = pangaea

[pangaea.shard0.rpc]
Expand All @@ -69,11 +61,3 @@ rpc = s0.p.hmny.io:14555
[pangaea.shard1.rpc]
rpc = l1.p.hmny.io:14555
rpc = s1.p.hmny.io:14555

[pangaea.shard2.rpc]
rpc = l2.p.hmny.io:14555
rpc = s2.p.hmny.io:14555

[pangaea.shard3.rpc]
rpc = l3.p.hmny.io:14555
rpc = s3.p.hmny.io:14555
9 changes: 4 additions & 5 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,12 @@ env:
- TEST="make"
- TEST="bash ./scripts/travis_go_checker.sh"
- TEST="bash ./scripts/travis_rpc_checker.sh"
- TEST="bash ./scripts/travis_rosetta_checker.sh"
- TEST="bash ./scripts/travis_pyhmy_checker.sh"

# We enable Travis on the main/dev branches or forked repositories here.
# PRs workflow isn't affected by this condition
# We enable Travis on the main/dev branches.
# pull_request type includes both main repo/fork PR workflow
if: >
repo != harmony-one/harmony OR
type = pull_request OR
(repo = harmony-one/harmony AND (branch = main OR branch = dev))

# upgrade docker to latest stable version
Expand All @@ -40,7 +39,7 @@ install:
# - curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $(go env GOPATH)/bin v1.41.1
- make go-get
- go install golang.org/x/tools/cmd/[email protected]
- go install github.com/fjl/[email protected].0
- go install github.com/fjl/[email protected].1
- echo "[WARN] - workaround for the GOPATH:"
# sometimes Travis decides to respect GOPATH and creates a symlink, thus we have || true for such cases
- rm $GOPATH/src/github.com/harmony-one/harmony || true;
Expand Down
21 changes: 18 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ RELEASE?=$(shell git describe --long | cut -f2 -d-)
RPMBUILD=$(HOME)/rpmbuild
DEBBUILD=$(HOME)/debbuild
SHELL := bash
EPOCH_TO_WAIT ?=5
EXTRA_NODES_FILE ?="./test/configs/local-extra-nodes.txt"

.PHONY: all help libs exe race trace-pointer debug debug-ext debug-kill test test-go test-api test-api-attach linux_static deb_init deb_build deb debpub_dev debpub_prod rpm_init rpm_build rpm rpmpub_dev rpmpub_prod clean distclean docker go-vet go-test docker build_localnet_validator protofiles travis_go_checker travis_rpc_checker travis_rosetta_checker debug-start-log debug-stop-log debug-restart-log debug-delete-log

Expand Down Expand Up @@ -38,6 +40,7 @@ help:
@echo "test-rosetta-attach - attach onto the rosetta testing docker container for inspection"
@echo "linux_static - static build the harmony binary & bootnode along with the MCL & BLS libs (for linux)"
@echo "linux_static_quick - static build the harmony binary & bootnode more quickly without recompiling dependencies (for linux)"
@echo "linux_static_cross_build - cross-compile static Linux binaries for Harmony and Bootnode from macOS"
@echo "rpm_init - prepare the RPM build environment by creating directories, copying files, and generating the spec file and source tarball"
@echo "rpm_build - build an RPM package for x86_64 architecture using the spec file (<RPMBUILD>/SPECS/harmony.spec)"
@echo "rpm - build a harmony RPM pacakge"
Expand All @@ -56,6 +59,7 @@ help:
@echo "travis_rosetta_checker - run the Travis Rosetta checker script, defaulting the test branch to 'master' unless overridden by TEST_REPO_BRANCH"
@echo "debug_external - cleans up environment, rebuilds the binary, and deploys with external nodes"
@echo "debug-multi-bls - cleans up environment, rebuilds the binary, and deploys with external nodes in configuration 1 harmony process -> 2 validators"
@echo "debug-add-extra-nodes-to-the-running-network wait for EPOCH_TO_WAIT and add nodes from EXTRA_NODES_FILE file"
@echo "build_localnet_validator - imports validator keys, funds validator accounts, waits for the epoch, and creates external validators on a local network"
@echo "debug-start-log - start a docker compose Promtail->Loki->Grafana stack against localnet logs, creates"\
"persistent volume to store parsed logs between localnet runs, needs docker compose and started localnet"
Expand All @@ -79,10 +83,9 @@ trace-pointer:
bash ./scripts/go_executable_build.sh -t

debug:
rm -rf .dht-127.0.0.1*
# uncomment the following lines to enable debug logging for libp2p, it produces a lot of logs, so disabled by default
#export GOLOG_LOG_LEVEL=debug
#export GOLOG_OUTPUT=stdout
# export GOLOG_LOG_LEVEL=debug
# export GOLOG_OUTPUT=stdout
# add VERBOSE=true before bash or run `export VERBOSE=true` on the shell level for have max logging
# add LEGACY_SYNC=true before bash or run `export LEGACY_SYNC=true` on the shell level to switch to the legacy sync
bash ./test/debug.sh ./test/configs/local-resharding.txt
Expand Down Expand Up @@ -117,6 +120,11 @@ debug-multi-bls-with-terminal:
bash ./test/build-localnet-validator.sh
screen -r localnet

debug-add-extra-nodes-to-the-running-network:
echo waiting for the $(EPOCH_TO_WAIT) epoch on the localnet
bash ./test/wait_till_n_epoch.sh $(EPOCH_TO_WAIT)
./test/debug.sh $(EXTRA_NODES_FILE) 64 64 false &

debug-multi-bls-multi-ext-node:
# add VERBOSE=true before bash or run `export VERBOSE=true` on the shell level for have max logging
# add LEGACY_SYNC=true before bash or run `export LEGACY_SYNC=true` on the shell level to switch to the legacy sync
Expand All @@ -127,6 +135,7 @@ debug-multi-bls-multi-ext-node:

clean:
rm -rf ./tmp_log/*
rm -rf ./.ps*
rm -rf ./.dht*
rm -rf ./db-*
rm -rf ./latest
Expand Down Expand Up @@ -168,6 +177,9 @@ linux_static:
linux_static_quick:
bash ./scripts/go_executable_build.sh -s

linux_static_cross_build:
bash ./scripts/linux_executable_from_macos.sh -s

deb_init:
rm -rf $(DEBBUILD)
mkdir -p $(DEBBUILD)/$(PKGNAME)-$(VERSION)-$(RELEASE)/{etc/systemd/system,usr/sbin,etc/sysctl.d,etc/harmony}
Expand Down Expand Up @@ -257,3 +269,6 @@ debug-delete-log:
@echo "[WARN] - it needs sudo to remove folder created with loki docker image user"
sudo rm -rf test/logs_aggregator/loki


docker-go-test:
docker run --rm -it -v "$PWD":/go/src/github.com/harmony-one/harmony frozen621/harmony-test bash -c 'make go-test'
22 changes: 22 additions & 0 deletions Test.Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
FROM golang:1.24

ARG ENV=dev

RUN apt-get update && \
apt-get install -y build-essential make git curl libgmp-dev libssl-dev gcc g++ && \
rm -rf /var/lib/apt/lists/*

WORKDIR /go/src/github.com/harmony-one

RUN git clone https://github.com/harmony-one/mcl.git && \
git clone https://github.com/harmony-one/bls.git

RUN echo "Cloning branch: ${ENV}" && \
git clone -b ${ENV} https://github.com/harmony-one/harmony.git && \
cd harmony && \
go mod tidy && \
make deps

WORKDIR /go/src/github.com/harmony-one/harmony

CMD ["make", "go-test"]
3 changes: 0 additions & 3 deletions api/service/manager.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ const (
Prometheus
Synchronize
CrosslinkSending
StagedStreamSync
)

func (t Type) String() string {
Expand All @@ -46,8 +45,6 @@ func (t Type) String() string {
return "Synchronize"
case CrosslinkSending:
return "CrosslinkSending"
case StagedStreamSync:
return "StagedStreamSync"
default:
return "Unknown"
}
Expand Down
151 changes: 0 additions & 151 deletions api/service/stagedstreamsync/download_manager_test.go

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import (
"fmt"
"time"

pb "github.com/harmony-one/harmony/api/service/legacysync/downloader/proto"
pb "github.com/harmony-one/harmony/api/service/synchronize/legacysync/downloader/proto"
"github.com/harmony-one/harmony/internal/utils"
"google.golang.org/grpc"
"google.golang.org/grpc/connectivity"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package downloader

import (
pb "github.com/harmony-one/harmony/api/service/legacysync/downloader/proto"
pb "github.com/harmony-one/harmony/api/service/synchronize/legacysync/downloader/proto"
)

// DownloadInterface is the interface for downloader package.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import (
"net"
"strconv"

pb "github.com/harmony-one/harmony/api/service/legacysync/downloader/proto"
pb "github.com/harmony-one/harmony/api/service/synchronize/legacysync/downloader/proto"
"github.com/harmony-one/harmony/internal/utils"

"google.golang.org/grpc"
Expand Down
Loading