Introduce the LOTUS_CHAIN_BADGERSTORE_DISABLE_FSYNC envvar
Allows the user to control the opts.SyncWrites option of BadgerDs
This commit is contained in:
parent
90c8891f95
commit
4830a3406b
@ -327,6 +327,21 @@ func (fsr *fsLockedRepo) Blockstore(ctx context.Context, domain BlockstoreDomain
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Tri-state environment variable LOTUS_CHAIN_BADGERSTORE_DISABLE_FSYNC
|
||||||
|
// - unset == the default (currently fsync enabled)
|
||||||
|
// - set with a false-y value == fsync enabled no matter what a future default is
|
||||||
|
// - set with any other value == fsync is disabled ignored defaults (recommended for day-to-day use)
|
||||||
|
//
|
||||||
|
if nosyncBs, nosyncBsSet := os.LookupEnv("LOTUS_CHAIN_BADGERSTORE_DISABLE_FSYNC"); nosyncBsSet {
|
||||||
|
nosyncBs = strings.ToLower(nosyncBs)
|
||||||
|
if nosyncBs == "" || nosyncBs == "0" || nosyncBs == "false" || nosyncBs == "no" {
|
||||||
|
opts.SyncWrites = true
|
||||||
|
} else {
|
||||||
|
opts.SyncWrites = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
bs, err := badgerbs.Open(opts)
|
bs, err := badgerbs.Open(opts)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fsr.bsErr = err
|
fsr.bsErr = err
|
||||||
|
Loading…
Reference in New Issue
Block a user