Skip to content
This repository was archived by the owner on Nov 25, 2025. It is now read-only.

Commit b6b4dfb

Browse files
Darioush Jalaliceyonur
andauthored
atomic syncer: simplify interface (#735)
Co-authored-by: Ceyhun Onur <[email protected]>
1 parent 24e1459 commit b6b4dfb

File tree

4 files changed

+12
-17
lines changed

4 files changed

+12
-17
lines changed

plugin/evm/atomic_backend.go

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ import (
1717
"github.com/ava-labs/avalanchego/utils"
1818
"github.com/ava-labs/avalanchego/utils/wrappers"
1919
"github.com/ava-labs/coreth/plugin/evm/atomic"
20-
syncclient "github.com/ava-labs/coreth/sync/client"
2120
"github.com/ethereum/go-ethereum/common"
2221
"github.com/ethereum/go-ethereum/log"
2322
)
@@ -57,10 +56,6 @@ type AtomicBackend interface {
5756
// will not have been executed on shared memory.
5857
MarkApplyToSharedMemoryCursor(previousLastAcceptedHeight uint64) error
5958

60-
// Syncer creates and returns a new Syncer object that can be used to sync the
61-
// state of the atomic trie from peers
62-
Syncer(client syncclient.LeafClient, targetRoot common.Hash, targetHeight uint64, requestSize uint16) (Syncer, error)
63-
6459
// SetLastAccepted is used after state-sync to reset the last accepted block.
6560
SetLastAccepted(lastAcceptedHash common.Hash)
6661

@@ -356,12 +351,6 @@ func (a *atomicBackend) MarkApplyToSharedMemoryCursor(previousLastAcceptedHeight
356351
return database.PutUInt64(a.metadataDB, appliedSharedMemoryCursorKey, previousLastAcceptedHeight+1)
357352
}
358353

359-
// Syncer creates and returns a new Syncer object that can be used to sync the
360-
// state of the atomic trie from peers
361-
func (a *atomicBackend) Syncer(client syncclient.LeafClient, targetRoot common.Hash, targetHeight uint64, requestSize uint16) (Syncer, error) {
362-
return newAtomicSyncer(client, a, targetRoot, targetHeight, requestSize)
363-
}
364-
365354
func (a *atomicBackend) GetVerifiedAtomicState(blockHash common.Hash) (AtomicState, error) {
366355
if state, ok := a.verifiedRoots[blockHash]; ok {
367356
return state, nil

plugin/evm/atomic_syncer.go

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,16 +50,15 @@ func addZeroes(height uint64) []byte {
5050
return packer.Bytes
5151
}
5252

53-
func newAtomicSyncer(client syncclient.LeafClient, atomicBackend *atomicBackend, targetRoot common.Hash, targetHeight uint64, requestSize uint16) (*atomicSyncer, error) {
54-
atomicTrie := atomicBackend.AtomicTrie()
53+
func newAtomicSyncer(client syncclient.LeafClient, vdb *versiondb.Database, atomicTrie AtomicTrie, targetRoot common.Hash, targetHeight uint64, requestSize uint16) (*atomicSyncer, error) {
5554
lastCommittedRoot, lastCommit := atomicTrie.LastCommitted()
5655
trie, err := atomicTrie.OpenTrie(lastCommittedRoot)
5756
if err != nil {
5857
return nil, err
5958
}
6059

6160
atomicSyncer := &atomicSyncer{
62-
db: atomicBackend.db,
61+
db: vdb,
6362
atomicTrie: atomicTrie,
6463
trie: trie,
6564
targetRoot: targetRoot,

plugin/evm/atomic_syncer_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ func testAtomicSyncer(t *testing.T, serverTrieDB *triedb.Database, targetHeight
6565
// next trie.
6666
for i, checkpoint := range checkpoints {
6767
// Create syncer targeting the current [syncTrie].
68-
syncer, err := atomicBackend.Syncer(mockClient, targetRoot, targetHeight, config.DefaultStateSyncRequestSize)
68+
syncer, err := newAtomicSyncer(mockClient, clientDB, atomicBackend.AtomicTrie(), targetRoot, targetHeight, config.DefaultStateSyncRequestSize)
6969
if err != nil {
7070
t.Fatal(err)
7171
}
@@ -92,7 +92,7 @@ func testAtomicSyncer(t *testing.T, serverTrieDB *triedb.Database, targetHeight
9292
}
9393

9494
// Create syncer targeting the current [targetRoot].
95-
syncer, err := atomicBackend.Syncer(mockClient, targetRoot, targetHeight, config.DefaultStateSyncRequestSize)
95+
syncer, err := newAtomicSyncer(mockClient, clientDB, atomicBackend.AtomicTrie(), targetRoot, targetHeight, config.DefaultStateSyncRequestSize)
9696
if err != nil {
9797
t.Fatal(err)
9898
}

plugin/evm/syncervm_client.go

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -276,7 +276,14 @@ func (client *stateSyncerClient) syncBlocks(ctx context.Context, fromHash common
276276

277277
func (client *stateSyncerClient) syncAtomicTrie(ctx context.Context) error {
278278
log.Info("atomic tx: sync starting", "root", client.syncSummary.AtomicRoot)
279-
atomicSyncer, err := client.atomicBackend.Syncer(client.client, client.syncSummary.AtomicRoot, client.syncSummary.BlockNumber, client.stateSyncRequestSize)
279+
atomicSyncer, err := newAtomicSyncer(
280+
client.client,
281+
client.db,
282+
client.atomicBackend.AtomicTrie(),
283+
client.syncSummary.AtomicRoot,
284+
client.syncSummary.BlockNumber,
285+
client.stateSyncRequestSize,
286+
)
280287
if err != nil {
281288
return err
282289
}

0 commit comments

Comments
 (0)