Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge rc andromeda into feat consensus size changes 2025.01.28 #6743

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
474 commits
Select commit Hold shift + click to select a range
84e41dc
shouldNotifyCacheAboutSenderNonce (or not).
andreibancioiu Nov 5, 2024
9fc3b29
Reference newest storage-go.
andreibancioiu Nov 6, 2024
ccad4bf
Reference newer storage-go.
andreibancioiu Nov 6, 2024
18698c1
Call notifyTransactionProviderIfNeeded() within createScheduledMiniBl…
andreibancioiu Nov 6, 2024
caaf1ef
Remove code not needed (was thought to be useful for the initial memp…
andreibancioiu Nov 6, 2024
72a8f5a
Fix concurrency issue.
andreibancioiu Nov 6, 2024
f00bbde
Do not alter log level anymore.
andreibancioiu Nov 6, 2024
0b39162
Optimize cleanup around scheduled transactions.
andreibancioiu Nov 7, 2024
3d9cb44
Merge branch 'rc/v1.7.next1' into selection-by-ppu
andreibancioiu Nov 7, 2024
1a5806e
Fix some long tests (mempool).
andreibancioiu Nov 7, 2024
3962e4d
Adjust call of "notifyTransactionProviderIfNeeded".
andreibancioiu Nov 7, 2024
fdb86cb
Undo changes related to scheduled txs cleanup.
andreibancioiu Nov 8, 2024
68dbf89
fixes after review
sstanculeanu Nov 11, 2024
bb8ee0f
Merge branch 'rc/v1.7.next1' of https://github.com/multiversx/mx-chai…
sstanculeanu Nov 11, 2024
531aad5
deps update
sstanculeanu Nov 11, 2024
c8e978e
Reference new storage-go. Send account notifications upon creating / …
andreibancioiu Nov 11, 2024
d4a53bf
Commit changes to go.mod.
andreibancioiu Nov 11, 2024
23634d7
Fix go.sum.
andreibancioiu Nov 11, 2024
248813f
Reference new storage go and fix long tests.
andreibancioiu Nov 12, 2024
a585719
When reverting a block, ForgetAllAccountNoncesInMempool.
andreibancioiu Nov 12, 2024
22026c6
Fix mock.
andreibancioiu Nov 12, 2024
5f8d03f
Fix after self-review.
andreibancioiu Nov 12, 2024
86aaa39
implemented override with array of string and int
axenteoctavian Nov 12, 2024
1a05453
better way for set slice
axenteoctavian Nov 12, 2024
458e04f
rollback some changes
axenteoctavian Nov 12, 2024
8a1e9ed
update test name
axenteoctavian Nov 12, 2024
5db19b5
Fix after self review (refactor, comments, additional tests).
andreibancioiu Nov 12, 2024
cc2eda5
Additional unit tests.
andreibancioiu Nov 12, 2024
6ee6292
Fix import.
andreibancioiu Nov 12, 2024
a498ef0
Fix linter issues.
andreibancioiu Nov 12, 2024
878d7b6
Fix tests.
andreibancioiu Nov 13, 2024
0fd6ced
update test name
axenteoctavian Nov 13, 2024
90bbf04
Fix after review (part 1).
andreibancioiu Nov 13, 2024
e0590fe
Fix after review (part 2).
andreibancioiu Nov 13, 2024
6c02c94
further fixes after review
sstanculeanu Nov 13, 2024
6eb9d20
Merge pull request #5896 from multiversx/rc/v1.7.next1
sstanculeanu Nov 13, 2024
171a31e
compressed flags
sstanculeanu Nov 13, 2024
ba08014
fix spamming warnings from apiTransactionProcessor
sstanculeanu Nov 13, 2024
febe899
No more ForgetAllAccountNonces().
andreibancioiu Nov 13, 2024
535d51b
Remove NotifyAccountNonce().
andreibancioiu Nov 13, 2024
bca90d9
Properly invoke NewTxCache().
andreibancioiu Nov 13, 2024
278acf9
Reference new storage-go.
andreibancioiu Nov 13, 2024
f533a2b
Fix long test.
andreibancioiu Nov 14, 2024
43ae39d
Merge branch 'master' into selection-by-ppu
andreibancioiu Nov 14, 2024
20dde29
Merge pull request #6604 from multiversx/fix_spam_logs
sstanculeanu Nov 14, 2024
aae947b
Newer storage (upon fix after review).
andreibancioiu Nov 14, 2024
b6d55cb
Merge branch 'selection-by-ppu' of ssh://github.com/multiversx/mx-cha…
andreibancioiu Nov 14, 2024
eda1a61
Fix memory tests.
andreibancioiu Nov 14, 2024
4b8fb0a
Newer storage-go.
andreibancioiu Nov 14, 2024
a98f0a4
Merge branch 'selection-by-ppu' into MX-16107-no-more-notify
andreibancioiu Nov 14, 2024
0cb7187
Sketch CS test: TestMempoolWithChainSimulator_Eviction.
andreibancioiu Nov 14, 2024
4c24359
Merge pull request #6602 from multiversx/v1.8.4-dev-config
sstanculeanu Nov 14, 2024
bc70dcc
Merge branch 'rc/v1.7.next1' into benchmark_trie
andreibancioiu Nov 14, 2024
6a80857
Merge pull request #6338 from multiversx/benchmark_trie
andreibancioiu Nov 14, 2024
c4f2db5
Optimize GetExistingAccount(). Only encode address if log level is TR…
andreibancioiu Nov 14, 2024
1cb7594
Merge branch 'MX-16107-no-more-notify' of ssh://github.com/multiversx…
andreibancioiu Nov 14, 2024
5656a3e
Merge pull request #6610 from multiversx/merge_master_into_spica_patc…
sstanculeanu Nov 15, 2024
ea50a40
Merge branch 'rc/spica-patch-mempool' into selection-by-ppu
andreibancioiu Nov 15, 2024
3ddc19f
Use proper tag for storage-go.
andreibancioiu Nov 15, 2024
26ddc02
Pass account nonce provider (backed by the accounts adapter) to Selec…
andreibancioiu Nov 15, 2024
38aeb55
Optimized logging. Don't directly encode to hex before calling log.Tr…
andreibancioiu Nov 15, 2024
297e530
Remove logic around "accountTxsShards" (was only needed for mempool n…
andreibancioiu Nov 15, 2024
e1d4287
Remove code not needed anymore.
andreibancioiu Nov 15, 2024
f84a3c6
Minor refactoring around nonce account provider.
andreibancioiu Nov 15, 2024
9aec5b9
Sketch additional CS tests (WIP).
andreibancioiu Nov 15, 2024
5b937db
AccountNonceProvider becomes AccountStateProvider (more information f…
andreibancioiu Nov 18, 2024
7fa9a6c
Merge branch 'selection-by-ppu' into MX-16107-no-more-notify
andreibancioiu Nov 18, 2024
7741b4e
Fix tests, reference newer storage.
andreibancioiu Nov 18, 2024
31bd356
Merge branch 'rc/spica-patch-mempool' into MX-16067-overridable-confi…
sstanculeanu Nov 19, 2024
232874b
Merge branch 'rc/spica-patch-mempool' into relayedv3
sstanculeanu Nov 19, 2024
ea799ab
updated indexer
sstanculeanu Nov 19, 2024
da36969
Fix long test.
andreibancioiu Nov 19, 2024
377cca5
Optimizations. Fix after self-review.
andreibancioiu Nov 19, 2024
5bb1b40
Fix old concurrency issue.
andreibancioiu Nov 19, 2024
0d295b8
Fix linter issues.
andreibancioiu Nov 19, 2024
f87f1c3
Remove unused field.
andreibancioiu Nov 19, 2024
4834372
Sketch a simulator for transactions selection - called in CreateBlock…
andreibancioiu Nov 19, 2024
9ff7f5c
Feed guardian checker into process/block/preprocess/transactions.
andreibancioiu Nov 19, 2024
0b5c262
Enhance accountStateProvider - make it know about guardians.
andreibancioiu Nov 19, 2024
cf4f1a8
Reference newer storage-go.
andreibancioiu Nov 20, 2024
1faa7f1
Fix tests.
andreibancioiu Nov 20, 2024
5b00521
Newer storage go. Additional tracing.
andreibancioiu Nov 20, 2024
4d7e013
Merge pull request #6581 from multiversx/selection-by-ppu
andreibancioiu Nov 20, 2024
7953116
Merge branch 'feat/mempool' into MX-16107-no-more-notify
andreibancioiu Nov 20, 2024
e1cb834
Fix tests.
andreibancioiu Nov 20, 2024
eca8029
Reference new storage-go.
andreibancioiu Nov 21, 2024
9005e76
Fix tests, fix after self-review.
andreibancioiu Nov 21, 2024
cfd1ea8
Remove chain simulator test (since it's not polished). Will be added …
andreibancioiu Nov 21, 2024
e02d607
In "interceptedHeader", handle concurrent access.
andreibancioiu Nov 22, 2024
dab1093
proper name for EnableEpoch epoch
sstanculeanu Nov 22, 2024
aacbedc
Transaction selection - call "VerifyGuardian" within AccountStateProv…
andreibancioiu Nov 24, 2024
2d52815
Handle non-executable transactions related to guardians in a separate…
andreibancioiu Nov 24, 2024
2a160f3
Fix linter issues.
andreibancioiu Nov 25, 2024
d36c7c5
Merge branch 'MX-16107-no-more-notify' into MX-16179-guardians
andreibancioiu Nov 25, 2024
7d0b272
Add some unit tests.
andreibancioiu Nov 25, 2024
7da7ef3
Rename state provider to selection session.
andreibancioiu Nov 25, 2024
47159a5
(final) fix after self-review.
andreibancioiu Nov 25, 2024
da02598
Merge branch 'MX-16107-no-more-notify' into MX-16179-guardians
andreibancioiu Nov 25, 2024
7376985
Reference newer storage-go.
andreibancioiu Nov 25, 2024
95fac83
fixes after review
sstanculeanu Nov 25, 2024
b8487af
Merge pull request #6570 from multiversx/relayedv3
sstanculeanu Nov 25, 2024
1cb65c2
Sketch GetTransferredValue(). Work in progress.
andreibancioiu Nov 26, 2024
16e35e2
Additional tests.
andreibancioiu Nov 26, 2024
0c2fe33
fixes after tests: fix validation error + fix txs to meta
sstanculeanu Nov 26, 2024
2c05aa7
proper fix for wrapped error
sstanculeanu Nov 26, 2024
25b2594
Fix after review.
andreibancioiu Nov 26, 2024
cdc543f
Merge branch 'MX-16107-no-more-notify' into MX-16179-guardians
andreibancioiu Nov 27, 2024
3170be4
extra check for relayer != guardian
sstanculeanu Nov 27, 2024
d23b953
fix typos
sstanculeanu Nov 27, 2024
c1695d3
Merge branch 'MX-16179-guardians' into MX-16160-consumed-balance
andreibancioiu Nov 27, 2024
6090ae4
Update reference to storage-go.
andreibancioiu Nov 27, 2024
e04679e
Merge pull request #6603 from multiversx/MX-16107-no-more-notify
andreibancioiu Nov 27, 2024
90d05c0
Merge branch 'feat/mempool' into MX-16179-guardians
andreibancioiu Nov 27, 2024
f2f6acf
Fix after review.
andreibancioiu Nov 28, 2024
959affe
Merge branch 'MX-16179-guardians' into MX-16160-consumed-balance
andreibancioiu Nov 28, 2024
960b81e
Merge pull request #6628 from multiversx/MX-16179-guardians
andreibancioiu Nov 28, 2024
6e33cbf
Fix after review. Benchmark.
andreibancioiu Nov 28, 2024
59d7ec7
Merge branch 'feat/mempool' into MX-16160-consumed-balance
andreibancioiu Nov 28, 2024
7eed6f5
Fix long test.
andreibancioiu Nov 28, 2024
03e21bf
Merge pull request #6637 from multiversx/MX-16160-consumed-balance
AdoAdoAdo Nov 28, 2024
6ae2337
proper execution of relayed v3
sstanculeanu Nov 28, 2024
619e579
Sketch mempool host. Move "GetTransferredValue()".
andreibancioiu Nov 29, 2024
33bf019
Add tests, reference storage-go.
andreibancioiu Nov 29, 2024
9428366
Fix after review.
andreibancioiu Nov 29, 2024
8185866
Implement an ephemeral accounts cache within a selection session.
andreibancioiu Nov 29, 2024
d556eb8
Merge pull request #6641 from multiversx/MX-16211-optimize-get-value
andreibancioiu Nov 29, 2024
9b1afba
Merge branch 'feat/mempool' into MX-16223-mempool-memoization
andreibancioiu Nov 29, 2024
91c17ad
Reference newer storage-go.
andreibancioiu Nov 29, 2024
ffaeb85
Merge branch 'MX-16223-mempool-memoization' of ssh://github.com/multi…
andreibancioiu Nov 29, 2024
389c78b
Add unit test, fix after review (references to storage-go).
andreibancioiu Nov 29, 2024
a7c336e
Merge pull request #6643 from multiversx/MX-16223-mempool-memoization
andreibancioiu Nov 29, 2024
881d8f5
Adjust TxDataPool.SizePerSender.
andreibancioiu Dec 2, 2024
8bce7d1
Merge pull request #6644 from multiversx/MX-16202-sender-constraints
andreibancioiu Dec 2, 2024
d75b3eb
Optimization: lower "maxNum" when selecting transactions.
andreibancioiu Dec 2, 2024
801c199
Reference storage-go.
andreibancioiu Dec 2, 2024
11fc7c6
Merge pull request #6645 from multiversx/MX-16207-selection-max-num
andreibancioiu Dec 2, 2024
2869076
further fixes after review, treat relayed v3 as normal tx
sstanculeanu Dec 2, 2024
980496d
fix tests
sstanculeanu Dec 2, 2024
8a9b204
change to fetch tokens by NonFungibleESDTv2 type
ssd04 Dec 3, 2024
58179fa
add custom handling for getting non fungible tokens
ssd04 Dec 3, 2024
edc0ff3
fixes after review
sstanculeanu Dec 3, 2024
33568e5
reverted common code in order to keep old logic on errors
sstanculeanu Dec 3, 2024
3c7abd8
Merge pull request #6639 from multiversx/relayedv3_fixes
sstanculeanu Dec 4, 2024
0ac7c16
use proper prevTxHash in case of relayed v1 and v2
sstanculeanu Dec 4, 2024
cfa9338
handle also dynamic nft and sft
ssd04 Dec 4, 2024
9a9128e
Merge pull request #6649 from multiversx/relayedv3_fix_prevhash
sstanculeanu Dec 4, 2024
4b2d82e
Merge branch 'rc/spica-patch-mempool' into fix-api-nfts-tokens-type
ssd04 Dec 4, 2024
d744ac4
fix transaction/pool endpoint issues
sstanculeanu Dec 5, 2024
9ac1370
fix linter
sstanculeanu Dec 5, 2024
7c4667b
Merge pull request #6640 from multiversx/feat/mempool
andreibancioiu Dec 5, 2024
04fd98d
Merge branch 'rc/spica-patch-mempool' into fix-api-nfts-tokens-type
andreibancioiu Dec 5, 2024
1bccd60
update mx-chain-storage-go to tag
sstanculeanu Dec 5, 2024
e65a3d4
Merge pull request #6647 from multiversx/fix-api-nfts-tokens-type
sstanculeanu Dec 5, 2024
e1b7df8
Merge branch 'rc/spica-patch-mempool' into proper_tag
sstanculeanu Dec 5, 2024
05204b4
Export selection session.
andreibancioiu Dec 5, 2024
392d918
Merge branch 'rc/spica-patch-mempool' into MX-16207-mempool-chain-sim…
andreibancioiu Dec 5, 2024
861b336
Merge pull request #6653 from multiversx/proper_tag
sstanculeanu Dec 5, 2024
886df30
Sketch test utils.
andreibancioiu Dec 5, 2024
6ee6f36
Sketch some tests.
andreibancioiu Dec 5, 2024
73c8af3
Merge pull request #6651 from multiversx/mx-16113_fix_transaction_poo…
sstanculeanu Dec 6, 2024
5d301c7
Test adjustments (work in progress).
andreibancioiu Dec 6, 2024
54bce4b
Merge pull request #6613 from multiversx/rc/spica-patch-mempool
sstanculeanu Dec 9, 2024
98a029a
Merge branch 'master' of https://github.com/multiversx/mx-chain-go in…
sstanculeanu Dec 9, 2024
3536927
remove old persisters when new already existing
BeniaminDrasovean Dec 10, 2024
aa66f65
add log trace
BeniaminDrasovean Dec 10, 2024
7a79a2d
Merge pull request #6663 from multiversx/merge_master_into_rc_spica_p…
sstanculeanu Dec 10, 2024
8d5400a
Merge branch 'rc/spica-patch-relayedv3' of https://github.com/multive…
sstanculeanu Dec 11, 2024
480ce7e
fixes after merge
sstanculeanu Dec 11, 2024
585d0ea
Merge pull request #6666 from multiversx/merger_rc_spica_patch_relaye…
AdoAdoAdo Dec 11, 2024
0bdd1c3
add unit tests
BeniaminDrasovean Dec 11, 2024
1beb4ca
sort imports
BeniaminDrasovean Dec 11, 2024
0ec0695
Merge branch 'rc/spica-patch-relayedv3' into test-pruning-storer
BeniaminDrasovean Dec 11, 2024
fee796f
fix after review
BeniaminDrasovean Dec 11, 2024
8b39184
Merge branch 'rc/spica-patch-relayedv3' into MX-16067-overridable-con…
axenteoctavian Dec 11, 2024
c5f7e5a
Merge pull request #6599 from multiversx/MX-16067-overridable-configs…
axenteoctavian Dec 12, 2024
05e3a2a
Integrate storage-go.
andreibancioiu Dec 12, 2024
559d93a
Reference storage-go, fix mempool memory tests.
andreibancioiu Dec 13, 2024
8e08e1a
accept relayed tx v3 with sender account non-existent
sstanculeanu Dec 13, 2024
8cf2672
fix after review
sstanculeanu Dec 16, 2024
bd43050
Merge pull request #6671 from multiversx/MX-16294-mempool-selection-r…
sstanculeanu Dec 16, 2024
d245d8b
Merge branch 'feat/relayedv3' into rv3_non_existent_sender
sstanculeanu Dec 16, 2024
6140ea4
Merge pull request #6677 from multiversx/rv3_non_existent_sender
sstanculeanu Dec 16, 2024
f5c7674
Merge branch 'rc/spica-patch-relayedv3' of https://github.com/multive…
sstanculeanu Dec 16, 2024
39b0433
Merge pull request #6678 from multiversx/merge_rc_spica_patch_rv3_int…
sstanculeanu Dec 16, 2024
90ef10c
Merge branch 'rc/spica-patch-relayedv3' into test-pruning-storer
BeniaminDrasovean Dec 16, 2024
6a74c03
Merge pull request #6667 from multiversx/test-pruning-storer
BeniaminDrasovean Dec 18, 2024
5452b88
Merge branch 'rc/spica-patch-relayedv3' of https://github.com/multive…
sstanculeanu Dec 18, 2024
e9c7ccb
Merge pull request #6682 from multiversx/merge_rc_spica_patch_rv3_int…
sstanculeanu Dec 18, 2024
276ffeb
Merge branch 'feat/relayedv3' into MX-16207-mempool-chain-simulator
andreibancioiu Dec 19, 2024
eaf721a
Better mempool tests (chain simulator).
andreibancioiu Dec 19, 2024
0ea8720
fix receipts hash mismatch
sstanculeanu Dec 19, 2024
145806c
fix tests
sstanculeanu Dec 19, 2024
3b3e5cd
Merge pull request #6687 from multiversx/fix_receipts_hash_mismatch
sstanculeanu Dec 20, 2024
eba1fad
extend /block endpoint
miiu96 Dec 23, 2024
6e5bcf5
fix missing tokens from es
miiu96 Dec 27, 2024
175fcc3
Merge branch 'rc/spica-patch-relayedv3' into MX-16386-bug-fix-missing…
miiu96 Dec 27, 2024
a90596c
Merge branch 'rc/spica-patch-relayedv3' into MX-16368-extend-get-bloc…
miiu96 Dec 27, 2024
0683dcc
On Node API, adjust processing type for relayed V3.
andreibancioiu Jan 8, 2025
c56d9e0
Update node/external/transactionAPI/apiTransactionProcessor_test.go
andreibancioiu Jan 8, 2025
c8df156
Update node/external/transactionAPI/apiTransactionProcessor_test.go
andreibancioiu Jan 8, 2025
5456f8d
Update node/external/transactionAPI/apiTransactionProcessor_test.go
andreibancioiu Jan 8, 2025
c3dfab5
Fix after review.
andreibancioiu Jan 8, 2025
5ebab05
Merge pull request #6692 from multiversx/MX-16386-bug-fix-missing-tok…
sstanculeanu Jan 9, 2025
52956d5
Merge branch 'rc/spica-patch-relayedv3' into MX-16368-extend-get-bloc…
sstanculeanu Jan 9, 2025
f661684
Merge pull request #6693 from multiversx/MX-16416-tx-type
andreibancioiu Jan 9, 2025
07627b9
extract forHyperblock from block requests
sstanculeanu Jan 9, 2025
1a2c25d
Merge pull request #6691 from multiversx/MX-16368-extend-get-block-en…
sstanculeanu Jan 9, 2025
6f4945c
Merge branch 'rc/spica-patch-relayedv3' of https://github.com/multive…
sstanculeanu Jan 9, 2025
4bef80d
update deps after merge
sstanculeanu Jan 9, 2025
0ed8bb0
Merge pull request #6699 from multiversx/merge_rc_spica_patch_rv3_int…
sstanculeanu Jan 9, 2025
7092e61
new metric for extra relayed tx gas limit
sstanculeanu Jan 9, 2025
9a6c9e3
Merge pull request #6700 from multiversx/new_metric_extra_gas_relayed
sstanculeanu Jan 9, 2025
611be56
Merge branch 'feat/relayedv3' into MX-16207-mempool-chain-simulator
andreibancioiu Jan 10, 2025
58251d2
fix relayed v3 with relayer one of the participants leading to free txs
sstanculeanu Jan 13, 2025
c8faf1a
also fix for sc call
sstanculeanu Jan 13, 2025
55ac0c9
linter fixes
sstanculeanu Jan 13, 2025
7c3462b
Merge pull request #6704 from multiversx/fix_relayed_by_participants
sstanculeanu Jan 14, 2025
e66a20a
fixed the computed fee for outport for relayed v3
sstanculeanu Jan 14, 2025
545d15e
Merge pull request #6706 from multiversx/fix_computed_fee_on_outport
sstanculeanu Jan 14, 2025
0de4606
fix chain simulator
miiu96 Jan 14, 2025
96b260a
Merge pull request #6707 from multiversx/fix-chain-simulator
miiu96 Jan 15, 2025
054aa1e
count all refunds if more than one scr exists
sstanculeanu Jan 15, 2025
9caaba2
Merge pull request #6708 from multiversx/node_api_fix_multiple_refunds
sstanculeanu Jan 15, 2025
edf2be2
treat multiple scrs outport driver
miiu96 Jan 15, 2025
d9fc071
Merge branch 'feat/relayedv3' into multiple-scrs-with-refund
miiu96 Jan 15, 2025
e6703ec
small fix
miiu96 Jan 15, 2025
e83061a
Merge remote-tracking branch 'origin/multiple-scrs-with-refund' into …
miiu96 Jan 15, 2025
ee6ae21
had refund
miiu96 Jan 16, 2025
ae1e852
Additional test: TestMempoolWithChainSimulator_Selection_WhenInsuffic…
andreibancioiu Jan 16, 2025
189ba98
Refactor.
andreibancioiu Jan 16, 2025
86fdeb9
add continue
miiu96 Jan 16, 2025
f0e500b
Additional test: TestMempoolWithChainSimulator_Selection_WhenUsersHav…
andreibancioiu Jan 16, 2025
b0f6540
Merge branch 'feat/relayedv3' into MX-16207-mempool-chain-simulator
andreibancioiu Jan 16, 2025
c020f20
Fix linter.
andreibancioiu Jan 16, 2025
f937fba
Merge pull request #6709 from multiversx/multiple-scrs-with-refund
miiu96 Jan 16, 2025
ffca7dd
Merge branch 'feat/relayedv3' into MX-16207-mempool-chain-simulator
sstanculeanu Jan 16, 2025
fdfbff6
Adjust timing / sleeps (for slower CI agents).
andreibancioiu Jan 16, 2025
879c890
Merge branch 'MX-16207-mempool-chain-simulator' of ssh://github.com/m…
andreibancioiu Jan 16, 2025
9f12905
Merge pull request #6654 from multiversx/MX-16207-mempool-chain-simul…
andreibancioiu Jan 16, 2025
1476698
updated deps
sstanculeanu Jan 16, 2025
6bd3142
Merge pull request #6710 from multiversx/update_deps
sstanculeanu Jan 16, 2025
4afb0de
Merge pull request #6632 from multiversx/feat/relayedv3
sstanculeanu Jan 16, 2025
1c86a1e
new indexer
miiu96 Jan 22, 2025
e9dfa12
fixes
miiu96 Jan 23, 2025
4ff8d19
proper tag
miiu96 Jan 23, 2025
88c9501
Merge pull request #6731 from multiversx/extra-info-spica-patch-es-in…
sstanculeanu Jan 27, 2025
c4148e7
Merge pull request #6657 from multiversx/rc/spica-patch-relayedv3
sstanculeanu Jan 27, 2025
373fab6
compressed relayed v3 flag
sstanculeanu Jan 27, 2025
b505135
Merge pull request #6741 from multiversx/v1.8.9-dev-config
sstanculeanu Jan 28, 2025
53b0d5f
Merge branch 'rc/andromeda' of https://github.com/multiversx/mx-chain…
sstanculeanu Jan 28, 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
Original file line number Diff line number Diff line change
@@ -0,0 +1,316 @@
name: Chain Simulator Build and Integration Test

on:
pull_request:
branches:
- 'main'
- 'master'
- 'rc/*'
workflow_dispatch:
issue_comment:
types: [created]

permissions:
issues: write
pull-requests: write
contents: read

jobs:
build-and-test:
if: |
github.event_name == 'pull_request' ||
(github.event_name == 'issue_comment' && contains(github.event.comment.body, 'Run Tests:')) ||
github.event_name == 'workflow_dispatch'

strategy:
matrix:
#TODO Include Macos support later on
runs-on: [ubuntu-latest]
runs-on: ${{ matrix.runs-on }}
env:
BRANCH_NAME: ${{ github.head_ref || github.ref_name }}
TARGET_BRANCH: ""
MX_CHAIN_GO_TARGET_BRANCH: ""
MX_CHAIN_SIMULATOR_TARGET_BRANCH: ""
MX_CHAIN_TESTING_SUITE_TARGET_BRANCH: ""

steps:
- name: Determine Target Branches
id: target_branch
run: |
echo "CURRENT_BRANCH=${GITHUB_HEAD_REF:-${GITHUB_REF_NAME}}" >> $GITHUB_ENV

# Default target branches based on the PR base branch
if [[ "${{ github.event.pull_request.base.ref }}" == "main" ]]; then
echo "MX_CHAIN_SIMULATOR_TARGET_BRANCH=main" >> $GITHUB_ENV
echo "MX_CHAIN_TESTING_SUITE_TARGET_BRANCH=main" >> $GITHUB_ENV
elif [[ "${{ github.event.pull_request.base.ref }}" == "master" ]]; then
echo "MX_CHAIN_SIMULATOR_TARGET_BRANCH=main" >> $GITHUB_ENV
echo "MX_CHAIN_TESTING_SUITE_TARGET_BRANCH=main" >> $GITHUB_ENV
else
echo "MX_CHAIN_SIMULATOR_TARGET_BRANCH=${{ github.event.pull_request.base.ref }}" >> $GITHUB_ENV
echo "MX_CHAIN_TESTING_SUITE_TARGET_BRANCH=${{ github.event.pull_request.base.ref }}" >> $GITHUB_ENV
fi

# Always set MX_CHAIN_GO_TARGET_BRANCH based on the PR base branch
echo "MX_CHAIN_GO_TARGET_BRANCH=${{ github.event.pull_request.base.ref }}" >> $GITHUB_ENV


- name: Fetch and Parse Last Comment for Branches
uses: actions/github-script@v7
id: fetch_and_parse_last_comment
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
// Get the latest comment
const comments = await github.rest.issues.listComments({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
});

const lastComment = comments.data.pop(); // Get the last comment

if (lastComment && lastComment.body.includes('Run Tests:')) {
const body = lastComment.body.trim();
core.setOutput('latest_comment', body);

// Parse the branches from the last comment
const simulatorBranchMatch = body.match(/mx-chain-simulator-go:\s*(\S+)/);
const testingSuiteBranchMatch = body.match(/mx-chain-testing-suite:\s*(\S+)/);

// Override the target branches if specified
if (simulatorBranchMatch) {
core.exportVariable('MX_CHAIN_SIMULATOR_TARGET_BRANCH', simulatorBranchMatch[1]);
}
if (testingSuiteBranchMatch) {
core.exportVariable('MX_CHAIN_TESTING_SUITE_TARGET_BRANCH', testingSuiteBranchMatch[1]);
}
} else {
core.info('The last comment does not contain "Run Tests:". Skipping branch override.');
}


- name: Print Target Branches
run: |
echo "Current branch mx-chain-go: ${{ env.CURRENT_BRANCH }}"
echo "mx-chain-go target branch: ${{ env.MX_CHAIN_GO_TARGET_BRANCH }}"
echo "mx-chain-simulator-go target branch: ${{ env.MX_CHAIN_SIMULATOR_TARGET_BRANCH }}"
echo "mx-chain-testing-suite target branch: ${{ env.MX_CHAIN_TESTING_SUITE_TARGET_BRANCH }}"

- name: Set up Go 1.20.7
uses: actions/setup-go@v3
with:
go-version: 1.20.7
id: go

- name: Checkout mx-chain-go
uses: actions/checkout@v4
with:
repository: 'multiversx/mx-chain-go'
ref: ${{ github.head_ref }}
fetch-depth: 0
path: 'mx-chain-go'

- name: Get Latest mx-chain-go Commit Hash
run: |
cd mx-chain-go
current_branch=$(git symbolic-ref --short HEAD)
echo "CURRENT_BRANCH=${current_branch}" >> $GITHUB_ENV
git fetch origin ${current_branch} --prune
latest_commit_hash=$(git rev-parse origin/${current_branch})
echo "LATEST_COMMIT_HASH=${latest_commit_hash}" >> $GITHUB_ENV
echo "Latest commit hash: ${latest_commit_hash}"

- name: Checkout mx-chain-simulator-go
uses: actions/checkout@v4
with:
repository: 'multiversx/mx-chain-simulator-go'
ref: ${{ env.MX_CHAIN_SIMULATOR_TARGET_BRANCH || github.event.pull_request.base.ref }}
path: 'mx-chain-simulator-go'

- name: Set up Python 3.10
uses: actions/setup-python@v2
with:
python-version: '3.10'

- name: Install Python Dependencies and Update go.mod
run: |
cd mx-chain-simulator-go
pip install -r scripts/update-go-mod/requirements.txt
python scripts/update-go-mod/update-go-mod.py $LATEST_COMMIT_HASH

- name: Run go build
run: |
cd mx-chain-simulator-go/cmd/chainsimulator
go build
echo "CHAIN_SIMULATOR_BUILD_PATH=$(pwd)" >> $GITHUB_ENV

- name: Checkout mx-chain-testing-suite
uses: actions/checkout@v4
with:
repository: 'multiversx/mx-chain-testing-suite'
path: 'mx-chain-testing-suite'
fetch-depth: 0
ref: ${{ env.MX_CHAIN_TESTING_SUITE_TARGET_BRANCH || github.event.pull_request.base.ref }}
token: ${{ secrets.MVX_TESTER_GH_TOKEN }}

- name: Install Dependencies
run: |
pip install -r mx-chain-testing-suite/requirements.txt
echo "PYTHONPATH=mx-chain-testing-suite" >> $GITHUB_ENV


- name: Run tests and generate HTML report
run: |
set +e
pytest mx-chain-testing-suite/scenarios/ --html=report.html --self-contained-html --continue-on-collection-errors
PYTEST_EXIT_CODE=$?
set -e
echo "PYTEST_EXIT_CODE=$PYTEST_EXIT_CODE" >> $GITHUB_ENV
echo "Pytest exit code: $PYTEST_EXIT_CODE"
if [ -f "report.html" ]; then
echo "Report generated successfully."
mkdir -p ./reports
mv report.html ./reports/
else
echo "Report not found."
fi

- name: Upload test report
if: always()
uses: actions/upload-artifact@v3
with:
name: pytest-report-${{ github.run_id }}
path: reports/report.html

- name: Deploy Report to GitHub Pages
if: always()
id: deploy_report
run: |
# Navigate to the mx-chain-testing-suite directory
cd mx-chain-testing-suite

# Configure Git user
git config user.name "GitHub Action"
git config user.email "[email protected]"

# Check if the report exists
if [ -f "../reports/report.html" ]; then
# Ensure we're on the 'gh-pages' branch and up to date
git fetch --all
git checkout gh-pages || git checkout --orphan gh-pages

# Create a new directory for the report based on the current timestamp
TIMESTAMP=$(date +'%d%m%Y-%H%M%S')
echo "TIMESTAMP=$TIMESTAMP" >> $GITHUB_ENV
REPORT_DIR="reports/${BRANCH_NAME}/${TIMESTAMP}"
mkdir -p $REPORT_DIR

# Move the report into the new directory
cp ../reports/report.html $REPORT_DIR/index.html

# Add and commit only the new report
git add $REPORT_DIR/index.html
git commit -m "Deploy Test Report at $BRANCH_NAME/$TIMESTAMP"

# Set remote URL with authentication token
git remote set-url origin https://x-access-token:${{ secrets.MVX_TESTER_GH_TOKEN }}@github.com/multiversx/mx-chain-testing-suite.git

# Push changes to the remote 'gh-pages' branch
git push --force origin gh-pages
else
echo "Report file not found, skipping deployment."
fi


- name: Update Index Page
if: always()
run: |
cd mx-chain-testing-suite
git fetch --all
git checkout gh-pages || git checkout --orphan gh-pages
if [ -d "docs" ]; then
cd docs
echo "<html><body><h1>Test Reports</h1><ul>" > index.html
for report in $(ls ../reports); do
echo "<li><a href='../reports/$report/index.html'>Report - $report</a></li>" >> index.html
done
echo "</ul></body></html>" >> index.html
git add index.html
git commit -m "Update Index of Reports"
git push origin gh-pages --force
else
mkdir -p docs
cd docs
echo "<html><body><h1>Test Reports</h1><ul>" > index.html
echo "</ul></body></html>" >> index.html
echo "Docs directory was not found and has been created."
fi

- name: Comment PR with report link or error message
if: always()
uses: actions/github-script@v7
env:
TIMESTAMP: ${{ env.TIMESTAMP }}
BRANCH_NAME: ${{ env.BRANCH_NAME }}
CURRENT_BRANCH: ${{ env.CURRENT_BRANCH }}
MX_CHAIN_GO_TARGET_BRANCH: ${{ env.MX_CHAIN_GO_TARGET_BRANCH }}
MX_CHAIN_SIMULATOR_TARGET_BRANCH: ${{ env.MX_CHAIN_SIMULATOR_TARGET_BRANCH }}
MX_CHAIN_TESTING_SUITE_TARGET_BRANCH: ${{ env.MX_CHAIN_TESTING_SUITE_TARGET_BRANCH }}
LATEST_COMMIT_HASH: ${{ env.LATEST_COMMIT_HASH }}
PYTEST_EXIT_CODE: ${{ env.PYTEST_EXIT_CODE }}

with:
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
const timestamp = process.env.TIMESTAMP;
const branchName = process.env.BRANCH_NAME;
const currentBranch = process.env.CURRENT_BRANCH;
const goTargetBranch = process.env.MX_CHAIN_GO_TARGET_BRANCH;
const simulatorTargetBranch = process.env.MX_CHAIN_SIMULATOR_TARGET_BRANCH;
const testingSuiteTargetBranch = process.env.MX_CHAIN_TESTING_SUITE_TARGET_BRANCH;
const commitHash = process.env.LATEST_COMMIT_HASH;
const exitCode = process.env.PYTEST_EXIT_CODE;
const issue_number = context.issue.number;
const owner = context.repo.owner;
const repo = context.repo.repo;
let message;

if (timestamp && branchName && timestamp !== "" && branchName !== "") {
const reportUrl = `https://multiversx.github.io/mx-chain-testing-suite/reports/${branchName}/${timestamp}/index.html`;
message = `
📊 **MultiversX Automated Test Report:** [View Report](${reportUrl})

🔄 **Build Details:**
- **mx-chain-go Commit Hash:** \`${commitHash}\`
- **Current Branch:** \`${currentBranch}\`
- **mx-chain-go Target Branch:** \`${goTargetBranch}\`
- **mx-chain-simulator-go Target Branch:** \`${simulatorTargetBranch}\`
- **mx-chain-testing-suite Target Branch:** \`${testingSuiteTargetBranch}\`

🚀 **Environment Variables:**
- **TIMESTAMP:** \`${timestamp}\`
- **PYTEST_EXIT_CODE:** \`${exitCode}\`
🎉 **MultiversX CI/CD Workflow Complete!**
`;
} else {
message = "⚠️ No report was generated due to an error or cancellation of the process.\nPlease checkout gh action logs for details";
}

github.rest.issues.createComment({
issue_number: issue_number,
owner: owner,
repo: repo,
body: message
});

- name: Fail job if tests failed
if: always()
run: |
if [ "${{ env.PYTEST_EXIT_CODE }}" != "0" ]; then
echo "Tests failed with exit code ${{ env.PYTEST_EXIT_CODE }}"
exit 1
else
echo "Tests passed successfully."
fi
2 changes: 1 addition & 1 deletion .github/workflows/build_and_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ jobs:
build:
strategy:
matrix:
runs-on: [ubuntu-latest, macos-13, macos-13-xlarge]
runs-on: [ubuntu-latest, macos-latest]
runs-on: ${{ matrix.runs-on }}
name: Build
steps:
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/create_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
build:
strategy:
matrix:
runs-on: [ubuntu-latest, macos-13, macos-13-xlarge]
runs-on: [ubuntu-latest]
runs-on: ${{ matrix.runs-on }}
name: Build
steps:
Expand Down Expand Up @@ -129,7 +129,7 @@ jobs:
zip -r -j ${ARCHIVE} ${BUILD_DIR}

- name: Save artifacts
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: ${{ env.ARCHIVE }}
path: ${{ env.ARCHIVE }}
Expand All @@ -145,7 +145,7 @@ jobs:
# https://docs.github.com/en/free-pro-team@latest/actions/guides/storing-workflow-data-as-artifacts#downloading-or-deleting-artifacts
# A directory for each artifact is created using its name
- name: Download all workflow run artifacts
uses: actions/download-artifact@v2
uses: actions/download-artifact@v4
with:
path: assets

Expand Down
4 changes: 1 addition & 3 deletions .github/workflows/docker-keygenerator.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ name: Build & push keygenerator docker image

on:
workflow_dispatch:
pull_request:

jobs:
build-docker-image:
Expand All @@ -19,7 +18,6 @@ jobs:
uses: docker/setup-buildx-action@v3

- name: Log into Docker Hub
if: github.event_name != 'pull_request'
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
Expand All @@ -32,5 +30,5 @@ jobs:
context: .
file: ./docker/keygenerator/Dockerfile
platforms: linux/amd64,linux/arm64
push: ${{ github.event_name != 'pull_request' }}
push: true
tags: multiversx/chain-keygenerator:latest
6 changes: 6 additions & 0 deletions api/errors/errors.go
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,9 @@ var ErrTxGenerationFailed = errors.New("transaction generation failed")
// ErrValidationEmptyTxHash signals that an empty tx hash was provided
var ErrValidationEmptyTxHash = errors.New("TxHash is empty")

// ErrValidationEmptySCRHash signals that provided smart contract result hash is empty
var ErrValidationEmptySCRHash = errors.New("SCRHash is empty")

// ErrInvalidBlockNonce signals that an invalid block nonce was provided
var ErrInvalidBlockNonce = errors.New("invalid block nonce")

Expand All @@ -79,6 +82,9 @@ var ErrValidationEmptyBlockHash = errors.New("block hash is empty")
// ErrGetTransaction signals an error happening when trying to fetch a transaction
var ErrGetTransaction = errors.New("getting transaction failed")

// ErrGetSmartContractResults signals an error happening when trying to fetch smart contract results
var ErrGetSmartContractResults = errors.New("getting smart contract results failed")

// ErrGetBlock signals an error happening when trying to fetch a block
var ErrGetBlock = errors.New("getting block failed")

Expand Down
Loading
Loading