diff --git a/eth/backend.go b/eth/backend.go
index 60c958378c87d6259e0dc8f28f3befcf6b2c39e6..4137091c65ef51925f42af2cf4ca83c69037e534 100644
--- a/eth/backend.go
+++ b/eth/backend.go
@@ -276,6 +276,9 @@ func New(stack *node.Node, config *ethconfig.Config, txpoolCfg txpool2.Config, l
 	var allSnapshots *snapshotsync.RoSnapshots
 	if config.Snapshot.Enabled {
 		allSnapshots = snapshotsync.NewRoSnapshots(config.Snapshot, config.SnapDir)
+		if err = allSnapshots.Reopen(); err != nil {
+			return nil, fmt.Errorf("[Snapshots] Reopen: %w", err)
+		}
 		blockReader = snapshotsync.NewBlockReaderWithSnapshots(allSnapshots)
 
 		if len(stack.Config().DownloaderAddr) > 0 {
diff --git a/turbo/app/snapshots.go b/turbo/app/snapshots.go
index de183c9ab87cc0e50b7bd60e4c089cd4a66f2134..b5704a069dee8b0e154ccedce59a1eae100df0d3 100644
--- a/turbo/app/snapshots.go
+++ b/turbo/app/snapshots.go
@@ -21,7 +21,6 @@ import (
 	"github.com/ledgerwatch/erigon-lib/kv/mdbx"
 	"github.com/ledgerwatch/erigon/cmd/hack/tool"
 	"github.com/ledgerwatch/erigon/cmd/utils"
-	"github.com/ledgerwatch/erigon/core/rawdb"
 	"github.com/ledgerwatch/erigon/eth/ethconfig"
 	"github.com/ledgerwatch/erigon/internal/debug"
 	"github.com/ledgerwatch/erigon/params"
@@ -250,7 +249,9 @@ func doRetireCommand(cliCtx *cli.Context) error {
 	chainConfig := tool.ChainConfigFromDB(chainDB)
 	chainID, _ := uint256.FromBig(chainConfig.ChainID)
 	snapshots := snapshotsync.NewRoSnapshots(cfg, snapDir)
-	snapshots.Reopen()
+	if err := snapshots.Reopen(); err != nil {
+		return err
+	}
 
 	workers := runtime.GOMAXPROCS(-1) - 1
 	if workers < 1 {
@@ -351,47 +352,3 @@ func snapshotBlocks(ctx context.Context, chainDB kv.RoDB, fromBlock, toBlock, bl
 	}
 	return nil
 }
-
-//nolint
-func checkBlockSnapshot(chaindata string) error {
-	database := mdbx.MustOpen(chaindata)
-	defer database.Close()
-	datadir := path.Dir(chaindata)
-	chainConfig := tool.ChainConfigFromDB(database)
-	chainID, _ := uint256.FromBig(chainConfig.ChainID)
-	_ = chainID
-
-	cfg := ethconfig.NewSnapshotCfg(true, true)
-	snapshots := snapshotsync.NewRoSnapshots(cfg, filepath.Join(datadir, "snapshots"))
-	snapshots.Reopen()
-	//if err := snapshots.BuildIndices(context.Background(), *chainID); err != nil {
-	//	panic(err)
-	//}
-
-	snBlockReader := snapshotsync.NewBlockReaderWithSnapshots(snapshots)
-	tx, err := database.BeginRo(context.Background())
-	if err != nil {
-		return err
-	}
-	defer tx.Rollback()
-
-	for i := uint64(0); i < snapshots.BlocksAvailable(); i++ {
-		hash, err := rawdb.ReadCanonicalHash(tx, i)
-		if err != nil {
-			return err
-		}
-		blockFromDB := rawdb.ReadBlock(tx, hash, i)
-		blockFromSnapshot, _, err := snBlockReader.BlockWithSenders(context.Background(), tx, hash, i)
-		if err != nil {
-			return err
-		}
-
-		if blockFromSnapshot.Hash() != blockFromDB.Hash() {
-			panic(i)
-		}
-		if i%1_000 == 0 {
-			log.Info(fmt.Sprintf("Block Num: %dK", i/1_000))
-		}
-	}
-	return nil
-}