Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
134 commits
Select commit Hold shift + click to select a range
bcd6540
check if transaction is still tracked
danielradu10 Sep 24, 2025
570451d
added check before removing tx
danielradu10 Sep 24, 2025
19acc4b
add mutex and nil check
danielradu10 Sep 24, 2025
85c3fbd
optimize tx check
danielradu10 Sep 24, 2025
a494ce5
fix
danielradu10 Sep 24, 2025
afc11a6
added TODO
danielradu10 Sep 25, 2025
3677e59
small fix after copilot review
danielradu10 Sep 25, 2025
e7334bf
fixes after copilot review and unit tests
danielradu10 Sep 25, 2025
631c83f
Merge branch 'check-tracked-tx' into optimize-tx-check-09-24
danielradu10 Sep 25, 2025
643bb4d
Merge pull request #7280 from multiversx/optimize-tx-check-09-24
danielradu10 Sep 25, 2025
8b2b319
fixes after reviews
danielradu10 Sep 25, 2025
7141a24
refactor
danielradu10 Sep 25, 2025
9bae0b8
fixes after review
danielradu10 Sep 26, 2025
164ab4c
Merge branch 'check-tracked-tx' into check-tracked-tx-fixes
danielradu10 Sep 26, 2025
34ace43
small unit test
danielradu10 Sep 26, 2025
198da6e
Merge pull request #7278 from multiversx/check-tracked-tx
danielradu10 Sep 26, 2025
2f80005
Merge branch 'feat/mempool-supernova-part2' into check-tracked-tx-fixes
danielradu10 Sep 26, 2025
0a86232
added method for getting all the tracked blocks
danielradu10 Sep 26, 2025
7a77ef5
global account breadcrumbs and unit tests
danielradu10 Sep 29, 2025
48550af
fixes after reviews
danielradu10 Sep 29, 2025
a5fdbf3
more unit tests
danielradu10 Sep 29, 2025
2fbc3d6
comments and TODOs
danielradu10 Sep 29, 2025
5bf4c47
fixes after reviews
danielradu10 Sep 30, 2025
591bd37
fixes after review
danielradu10 Sep 30, 2025
be032ae
Merge pull request #7284 from multiversx/check-tracked-tx-fixes
danielradu10 Sep 30, 2025
1db0ac3
Merge branch 'feat/mempool-supernova-part2' into keep-breadcrumbs-com…
danielradu10 Sep 30, 2025
fe1cbad
fixes
danielradu10 Sep 30, 2025
cdc1ada
small renaming
danielradu10 Sep 30, 2025
415986d
integration
danielradu10 Sep 30, 2025
01513d1
Merge pull request #7288 from multiversx/keep-breadcrumbs-compiled
danielradu10 Sep 30, 2025
c5856f2
Merge branch 'feat/mempool-supernova-part2' into integrate-global-acc…
danielradu10 Sep 30, 2025
0a881e8
unit tests
danielradu10 Oct 1, 2025
0936eee
more small unit tests
danielradu10 Oct 1, 2025
74b3804
fully integrated global accounts breadcrumbs
danielradu10 Oct 1, 2025
ab7b2d9
fixes after review
danielradu10 Oct 1, 2025
14b8441
Merge branch 'rc/supernova' into update-feat-mempool-supernova-part2
danielradu10 Oct 1, 2025
5f4eb8f
Merge pull request #7301 from multiversx/update-feat-mempool-supernov…
danielradu10 Oct 1, 2025
9269f10
Merge branch 'feat/mempool-supernova-part2' into integrate-global-acc…
danielradu10 Oct 1, 2025
7eda7f8
remove transactionsTracker, unit tests, fixes
danielradu10 Oct 1, 2025
91837c5
comments
danielradu10 Oct 1, 2025
ddbeaf6
move getChainOfTrackedPendingBlocks below
danielradu10 Oct 1, 2025
587731c
increase coverage, fixes
danielradu10 Oct 2, 2025
1b7c54d
blockchainInfo still needed for SelectTransactions
danielradu10 Oct 2, 2025
fddbdc0
fixes
danielradu10 Oct 2, 2025
a641e99
fixes
danielradu10 Oct 2, 2025
8a4c8ad
small fixes
danielradu10 Oct 2, 2025
df82e94
linter fixes
danielradu10 Oct 2, 2025
d582e8f
more integration tests
danielradu10 Oct 3, 2025
87f2736
fixes after review
danielradu10 Oct 3, 2025
9712b7a
small renaming
danielradu10 Oct 3, 2025
d503c38
remove unused code
danielradu10 Oct 3, 2025
b9cc402
add reset
danielradu10 Oct 3, 2025
769a750
fix
danielradu10 Oct 3, 2025
1d172fa
fixes
danielradu10 Oct 3, 2025
4d52026
fixed comments
danielradu10 Oct 4, 2025
e1a9d1f
Merge pull request #7294 from multiversx/integrate-global-account-bre…
danielradu10 Oct 7, 2025
af3f2fd
Merge branch 'feat/mempool-supernova-part2' into integration-tests-forks
danielradu10 Oct 7, 2025
bdaa641
Merge branch 'feat/mempool-supernova-part2' into use-global-account-b…
danielradu10 Oct 7, 2025
0ef2c37
fixes after merging feat/mempool-supernova-part2 into use-global-acco…
danielradu10 Oct 7, 2025
16bb8b9
Merge pull request #7307 from multiversx/integration-tests-forks
danielradu10 Oct 7, 2025
51b14eb
Merge branch 'feat/mempool-supernova-part2' into use-global-account-b…
danielradu10 Oct 7, 2025
574d820
Merge branch 'rc/supernova' into update-feat-mempool-supernova-part2-…
danielradu10 Oct 7, 2025
ab24c9a
fix call of updateNonceRange
danielradu10 Oct 7, 2025
7446b69
Merge pull request #7313 from multiversx/update-feat-mempool-supernov…
danielradu10 Oct 8, 2025
af8cc07
Merge branch 'feat/mempool-supernova-part2' into use-global-account-b…
danielradu10 Oct 8, 2025
ae2433d
fixes after updating use-global-account-breadcrumbs
danielradu10 Oct 8, 2025
526ce95
fix unit test
danielradu10 Oct 8, 2025
67534f9
small fixes after copilot review
danielradu10 Oct 8, 2025
5bc0c76
fixes after copilot review
danielradu10 Oct 8, 2025
aeaa208
Merge branch 'use-global-account-breadcrumbs' into reset-selection-tr…
danielradu10 Oct 8, 2025
c964198
fixes after merging use-global-account-breadcrumbs into reset-selecti…
danielradu10 Oct 8, 2025
9a6bc54
fix after copilot review
danielradu10 Oct 8, 2025
132e07c
remove block on derive flow
danielradu10 Oct 9, 2025
68f0faa
integration tests
danielradu10 Oct 9, 2025
f802abf
fixes after reviews
danielradu10 Oct 9, 2025
b68ae89
fixes after merging use-global-account-breadcrumbs into remove-blocks…
danielradu10 Oct 9, 2025
a9d0f23
added a TODO comment
danielradu10 Oct 10, 2025
7859630
on selection simulation do not remove tracked blocks
danielradu10 Oct 10, 2025
41c9d8f
fixes after reviews
danielradu10 Oct 10, 2025
54f4658
fixes after reviews
danielradu10 Oct 10, 2025
b3a80fd
fix linter
danielradu10 Oct 10, 2025
2b226d8
small fix
danielradu10 Oct 10, 2025
00db09a
Merge branch 'use-global-account-breadcrumbs' into remove-blocks-on-d…
danielradu10 Oct 10, 2025
13b6b9d
fixes after merging use-global-account-breadcrumbs into remove-blocks…
danielradu10 Oct 10, 2025
3949ded
fixes after copilot review
danielradu10 Oct 10, 2025
88f6267
Merge pull request #7300 from multiversx/use-global-account-breadcrumbs
danielradu10 Oct 10, 2025
9eb7c99
Merge branch 'feat/mempool-supernova-part2' into reset-selection-tracker
danielradu10 Oct 10, 2025
dc40934
fix typo
danielradu10 Oct 10, 2025
1a14c3d
Merge branch 'feat/mempool-supernova-part2' into remove-blocks-on-derive
danielradu10 Oct 10, 2025
5cbb720
reset the latestRootHash and the latestNonce
danielradu10 Oct 10, 2025
6067dd6
add rootHash check
danielradu10 Oct 10, 2025
097fad7
Merge pull request #7309 from multiversx/reset-selection-tracker
danielradu10 Oct 14, 2025
5d398d5
Merge branch 'feat/mempool-supernova-part2' into remove-blocks-on-derive
danielradu10 Oct 14, 2025
043f3bf
Merge branch 'feat/mempool-supernova-part2' into check-roothash-10-10
danielradu10 Oct 14, 2025
8ef7f95
Merge branch 'rc/supernova' into update-10-14
danielradu10 Oct 14, 2025
0525ea9
Merge pull request #7340 from multiversx/update-10-14
sstanculeanu Oct 14, 2025
28afea7
Merge branch 'feat/mempool-supernova-part2' into check-roothash-10-10
danielradu10 Oct 14, 2025
86b1b8e
Merge branch 'feat/mempool-supernova-part2' into remove-blocks-on-derive
danielradu10 Oct 14, 2025
1a957b7
check roothash in the OnProposed flow
danielradu10 Oct 14, 2025
a3d14d0
fixes
danielradu10 Oct 14, 2025
1367990
fixes
danielradu10 Oct 14, 2025
938843a
solved todos, removed some todo comments
danielradu10 Oct 15, 2025
e6e4714
removed some TODOs
danielradu10 Oct 15, 2025
0aff770
fix
danielradu10 Oct 15, 2025
89b09fb
removed comment
danielradu10 Oct 16, 2025
570da2f
removed blockchain info
danielradu10 Oct 16, 2025
38c4cb0
fix comments
danielradu10 Oct 16, 2025
f6e0c13
fixes
danielradu10 Oct 16, 2025
6f1ce06
Merge pull request #7325 from multiversx/remove-blocks-on-derive
danielradu10 Oct 17, 2025
3d284d4
Merge branch 'feat/mempool-supernova-part2' into check-roothash-10-10
danielradu10 Oct 17, 2025
38d171b
Merge branch 'feat/mempool-supernova-part2' into todos-solved
danielradu10 Oct 17, 2025
9bae01b
fixes after merging feat/mempool-supernova-part2 into todos-solved
danielradu10 Oct 17, 2025
604ebd1
change order of deleting block and updating global breadcrumb
danielradu10 Oct 17, 2025
a57f41a
Merge pull request #7332 from multiversx/check-roothash-10-10
danielradu10 Oct 17, 2025
bb6afa2
Merge branch 'feat/mempool-supernova-part2' into todos-solved
danielradu10 Oct 17, 2025
090ee54
fix eviction consistency
danielradu10 Oct 17, 2025
4216d71
fixes and bug fix
danielradu10 Oct 20, 2025
d0717d6
added structure for the tracker diagnosis
danielradu10 Oct 20, 2025
875f9b5
fixes
danielradu10 Oct 20, 2025
427145b
added a TODO
danielradu10 Oct 20, 2025
bf23bf6
small fix
danielradu10 Oct 20, 2025
4262d7a
added IsInterfaceNil
danielradu10 Oct 20, 2025
1999696
comment and unit test
danielradu10 Oct 20, 2025
99ac8c4
Merge pull request #7344 from multiversx/todos-solved
danielradu10 Oct 20, 2025
dd489da
Merge branch 'feat/mempool-supernova-part2' into fix-eviction-consist…
danielradu10 Oct 20, 2025
f7686e9
added nil check
danielradu10 Oct 21, 2025
7afad8a
fixed race conditions
danielradu10 Oct 21, 2025
3a5548b
added unit tests
danielradu10 Oct 21, 2025
51489d1
Merge pull request #7352 from multiversx/fix-eviction-consistency
danielradu10 Oct 22, 2025
9bd88e5
Merge branch 'rc/supernova' into update-10-22
danielradu10 Oct 22, 2025
4fc0a01
Merge pull request #7361 from multiversx/update-10-22
danielradu10 Oct 22, 2025
02fa1cd
fix mutex unlock
ssd04 Oct 22, 2025
390f96e
add mutex protection comment
ssd04 Oct 22, 2025
12f0436
Merge pull request #7363 from multiversx/fix-mutex-unlock
ssd04 Oct 22, 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
40 changes: 0 additions & 40 deletions common/holders/blockchainInfo.go

This file was deleted.

40 changes: 0 additions & 40 deletions common/holders/blockchainInfo_test.go

This file was deleted.

9 changes: 1 addition & 8 deletions common/interface.go
Original file line number Diff line number Diff line change
Expand Up @@ -296,14 +296,6 @@ type TxSelectionOptionsAPI interface {
GetRequestedFields() string
}

// BlockchainInfo holds the parameters from the blockchain used for SelectTransactions
type BlockchainInfo interface {
GetLatestExecutedBlockHash() []byte
GetLatestCommittedBlockHash() []byte
GetCurrentNonce() uint64
IsInterfaceNil() bool
}

// GasScheduleNotifierAPI defines the behavior of the gas schedule notifier components that is used for api
type GasScheduleNotifierAPI interface {
core.GasScheduleNotifier
Expand Down Expand Up @@ -465,6 +457,7 @@ type TrieLeavesRetriever interface {
// AccountNonceAndBalanceProvider provides the nonce and balance of accounts
type AccountNonceAndBalanceProvider interface {
GetAccountNonceAndBalance(accountKey []byte) (uint64, *big.Int, bool, error)
GetRootHash() ([]byte, error)
IsInterfaceNil() bool
}

Expand Down
6 changes: 3 additions & 3 deletions dataRetriever/txpool/interface.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ import (
"time"

"github.com/multiversx/mx-chain-core-go/data"
"github.com/multiversx/mx-chain-core-go/data/block"
"github.com/multiversx/mx-chain-go/common"
"github.com/multiversx/mx-chain-go/storage"
"github.com/multiversx/mx-chain-go/txcache"
Expand All @@ -21,10 +20,11 @@ type txCache interface {
ForEachTransaction(function txcache.ForEachTransaction)
NumBytes() int
Diagnose(deep bool)
GetNumTrackedBlocks() uint64
GetTrackerDiagnosis() txcache.TrackerDiagnosis
GetTransactionsPoolForSender(sender string) []*txcache.WrappedTransaction
OnProposedBlock(blockHash []byte, blockBody *block.Body, blockHeader data.HeaderHandler, accountsProvider common.AccountNonceAndBalanceProvider, blockchainInfo common.BlockchainInfo) error
OnProposedBlock(blockHash []byte, blockBody data.BodyHandler, blockHeader data.HeaderHandler, accountsProvider common.AccountNonceAndBalanceProvider, latestExecutedHash []byte) error
OnExecutedBlock(blockHeader data.HeaderHandler) error
ResetTracker()
Cleanup(accountsProvider common.AccountNonceProvider, randomness uint64, maxNum int, cleanupLoopMaximumDurationMs time.Duration) uint64
}

Expand Down
4 changes: 2 additions & 2 deletions dataRetriever/txpool/shardedTxPool.go
Original file line number Diff line number Diff line change
Expand Up @@ -418,9 +418,9 @@ func (txPool *shardedTxPool) CleanupSelfShardTxCache(accountsProvider common.Acc
}

// OnProposedBlock notifies the underlying TxCache
func (txPool *shardedTxPool) OnProposedBlock(blockHash []byte, blockBody *block.Body, blockHeader data.HeaderHandler, accountsProvider common.AccountNonceAndBalanceProvider, blockchainInfo common.BlockchainInfo) error {
func (txPool *shardedTxPool) OnProposedBlock(blockHash []byte, blockBody *block.Body, blockHeader data.HeaderHandler, accountsProvider common.AccountNonceAndBalanceProvider, latestExecutedHash []byte) error {
cache := txPool.getSelfShardTxCache()
return cache.OnProposedBlock(blockHash, blockBody, blockHeader, accountsProvider, blockchainInfo)
return cache.OnProposedBlock(blockHash, blockBody, blockHeader, accountsProvider, latestExecutedHash)
}

// OnExecutedBlock notifies the underlying TxCache
Expand Down
3 changes: 1 addition & 2 deletions dataRetriever/txpool/shardedTxPool_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ import (
"github.com/multiversx/mx-chain-core-go/data/block"
"github.com/multiversx/mx-chain-core-go/data/transaction"
"github.com/multiversx/mx-chain-core-go/marshal"
"github.com/multiversx/mx-chain-go/common/holders"
"github.com/multiversx/mx-chain-go/config"
"github.com/multiversx/mx-chain-go/dataRetriever"
"github.com/multiversx/mx-chain-go/storage/storageunit"
Expand Down Expand Up @@ -579,7 +578,7 @@ func TestShardedTxPool_OnProposedBlock_And_OnExecutedBlock(t *testing.T) {
&block.Body{},
&block.HeaderV2{},
txcachemocks.NewAccountNonceAndBalanceProviderMock(),
holders.NewBlockchainInfo(nil, nil, 42),
nil,
)
require.Nil(t, err)
})
Expand Down
Loading
Loading