core/rawdb: fix db commands (#24540)
This commit is contained in:
parent
51de2bc9dc
commit
6afb717be5
@ -153,8 +153,15 @@ func newTable(path string, name string, readMeter metrics.Meter, writeMeter metr
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
// Will fail if the table is legacy(no metadata)
|
// TODO(rjl493456442) change it to read-only mode. Open the metadata file
|
||||||
meta, err = openFreezerFileForReadOnly(filepath.Join(path, fmt.Sprintf("%s.meta", name)))
|
// in rw mode. It's a temporary solution for now and should be changed
|
||||||
|
// whenever the tail deletion is actually used. The reason for this hack is
|
||||||
|
// the additional meta file for each freezer table is added in order to support
|
||||||
|
// tail deletion, but for most legacy nodes this file is missing. This check
|
||||||
|
// will suddenly break lots of database relevant commands. So the metadata file
|
||||||
|
// is always opened for mutation and nothing else will be written except
|
||||||
|
// the initialization.
|
||||||
|
meta, err = openFreezerFileForAppend(filepath.Join(path, fmt.Sprintf("%s.meta", name)))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user