node, core/rawdb: fix ancients, era resolve

This commit is contained in:
Felix Lange 2025-05-27 13:57:36 +02:00 committed by lightclient
parent 436aac37c4
commit 7c130b71c2
No known key found for this signature in database
GPG key ID: 657913021EF45A6A
3 changed files with 6 additions and 12 deletions

View file

@ -60,7 +60,7 @@ type chainFreezer struct {
// state freezer (e.g. dev mode). // state freezer (e.g. dev mode).
// - if non-empty directory is given, initializes the regular file-based // - if non-empty directory is given, initializes the regular file-based
// state freezer. // state freezer.
func newChainFreezer(datadir string, namespace string, readonly bool, eraDir string) (*chainFreezer, error) { func newChainFreezer(datadir string, eraDir string, namespace string, readonly bool) (*chainFreezer, error) {
if datadir == "" { if datadir == "" {
return &chainFreezer{ return &chainFreezer{
ancients: NewMemoryFreezer(readonly, chainFreezerTableConfigs), ancients: NewMemoryFreezer(readonly, chainFreezerTableConfigs),
@ -72,12 +72,9 @@ func newChainFreezer(datadir string, namespace string, readonly bool, eraDir str
if err != nil { if err != nil {
return nil, err return nil, err
} }
var edb *eradb.Store edb, err := eradb.New(resolveChainEraDir(datadir, eraDir))
if eraDir != "" { if err != nil {
edb, err = eradb.New(eraDir) return nil, err
if err != nil {
return nil, err
}
} }
return &chainFreezer{ return &chainFreezer{
ancients: freezer, ancients: freezer,

View file

@ -223,11 +223,7 @@ func Open(db ethdb.KeyValueStore, opts OpenOptions) (ethdb.Database, error) {
if chainFreezerDir != "" { if chainFreezerDir != "" {
chainFreezerDir = resolveChainFreezerDir(chainFreezerDir) chainFreezerDir = resolveChainFreezerDir(chainFreezerDir)
} }
var eraDir string frdb, err := newChainFreezer(chainFreezerDir, opts.Era, opts.MetricsNamespace, opts.ReadOnly)
if chainFreezerDir != "" {
eraDir = resolveChainEraDir(chainFreezerDir, opts.Era)
}
frdb, err := newChainFreezer(chainFreezerDir, opts.MetricsNamespace, opts.ReadOnly, eraDir)
if err != nil { if err != nil {
printChainMetadata(db) printChainMetadata(db)
return nil, err return nil, err

View file

@ -713,6 +713,7 @@ func (n *Node) OpenDatabaseWithOptions(name string, opt DatabaseOptions) (ethdb.
ReadOnly: opt.ReadOnly, ReadOnly: opt.ReadOnly,
}) })
} else { } else {
opt.AncientsDirectory = n.ResolveAncient(name, opt.AncientsDirectory)
db, err = openDatabase(internalOpenOptions{ db, err = openDatabase(internalOpenOptions{
directory: n.ResolvePath(name), directory: n.ResolvePath(name),
dbEngine: n.config.DBEngine, dbEngine: n.config.DBEngine,