Describe the bug
With a large dataset (~70GB, ~4500 files), brig ls takes a very long time, as does performing a repin, Worse yet, repinning seems to be an operation that blocks all other file operations, so with the default configuration brig stalls for hours every 15 minutes. I suspect this is due to IsCached being called on everything in the repo and therefore performing a /refs call on all the CIDs brig knows about.
To Reproduce
- Add a large dataset
brig ls
or
- While (re-)adding a large dataset, trigger a repin
- Staging process blocks until repin is complete
Please always include the output of the following commands in your report!
go version: ````
uname -s -v -m: Linux #1-NixOS SMP PREEMPT Wed May 18 08:28:23 UTC 2022 x86_64
IPFS config (only datastore):
{
"Datastore": {
"BloomFilterSize": 0,
"GCPeriod": "1h",
"HashOnRead": false,
"NoSync": true,
"Spec": {
"child": {
"path": "badgerds",
"syncWrites": false,
"truncate": true,
"type": "badgerds"
},
"prefix": "badger.datastore",
"type": "measure"
},
"StorageGCWatermark": 90,
"StorageMax": "200GB"
},
}
brig client version: v.. [build: ] (built from 6b7eccf)
brig server version: v..+
IPFS Version: 0.12.2+
Expected behavior
brig ls should return (near) instantly. Repinning should be performed in the background, without blocking other commands and without hammering the disk with read operations.
Describe the bug
With a large dataset (~70GB, ~4500 files),
brig lstakes a very long time, as does performing a repin, Worse yet, repinning seems to be an operation that blocks all other file operations, so with the default configuration brig stalls for hours every 15 minutes. I suspect this is due toIsCachedbeing called on everything in the repo and therefore performing a/refscall on all the CIDs brig knows about.To Reproduce
brig lsor
Please always include the output of the following commands in your report!
brig bug -sgo version: ````
uname -s -v -m:
Linux #1-NixOS SMP PREEMPT Wed May 18 08:28:23 UTC 2022 x86_64IPFS config (only datastore):
brig client version:
v.. [build: ](built from 6b7eccf)brig server version:
v..+IPFS Version:
0.12.2+Expected behavior
brig lsshould return (near) instantly. Repinning should be performed in the background, without blocking other commands and without hammering the disk with read operations.