VictoriaMetrics/lib
Aliaksandr Valialkin 4c02e496f7 lib/fs: do not postpone directory removal on NFS error
Continue trying to remove NFS directory on temporary errors for up to a minute.

The previous async removal process breaks in the following case during VictoriaMetrics start

- VictoriaMetrics opens index, finds incomplete merge transactions and starts replaying them.
- The transaction instructs removing old directories for parts, which were already merged into bigger part.
- VictoriaMetrics removes these directories, but their removal is delayed due to NFS errors.
- VictoriaMetrics scans partition directory after all the incomplete merge transactions are finished
  and finds directories, which should be removed, but weren't still removed due to NFS errors.
- VictoriaMetrics panics when it finds unexpected empty directory.

Updates https://github.com/VictoriaMetrics/VictoriaMetrics/issues/162
2019-11-10 13:24:51 +02:00
..
backup app/{vmbackup,vmrestore}: add vmbackup and vmrestore tools for creating backups on s3 or gcs from instant snapshots 2019-11-08 21:21:07 +02:00
buildinfo all: open-sourcing single-node version 2019-05-23 00:18:06 +03:00
bytesutil add unittests for bytesutil and storage (#221) 2019-11-04 00:54:46 +02:00
decimal lib/{decimal,encoding}: optimize float64<->decimal conversion for arrays with zeros or ones 2019-11-01 16:48:12 +02:00
encoding lib/{decimal,encoding}: optimize float64<->decimal conversion for arrays with zeros or ones 2019-11-01 16:48:12 +02:00
fastnum lib/{decimal,encoding}: optimize float64<->decimal conversion for arrays with zeros or ones 2019-11-01 16:48:12 +02:00
filestream app/{vmbackup,vmrestore}: add vmbackup and vmrestore tools for creating backups on s3 or gcs from instant snapshots 2019-11-08 21:21:07 +02:00
fs lib/fs: do not postpone directory removal on NFS error 2019-11-10 13:24:51 +02:00
httpserver all: return 503 http error if service is temporarily unavailable 2019-08-23 09:55:07 +03:00
logger all: open-sourcing single-node version 2019-05-23 00:18:06 +03:00
memory lib/memory: properly handle int overflow in sysTotalMemory 2019-10-17 00:50:48 +03:00
mergeset lib/{storage,mergeset}: create missing partition directories after restoring from backups 2019-11-02 02:27:11 +02:00
netutil all: add support for GOARCH=386 and fix all the issues related to 32-bit architectures such as GOARCH=arm 2019-10-17 18:23:23 +03:00
procutil lib/procutil: typo fix in comment to WaitForSigterm 2019-06-04 17:31:47 +03:00
prompb lib/prompb: removed outdated README.md 2019-10-14 22:12:57 +03:00
storage lib/storage: reorganize the code in getStartDateForPerDayInvertedIndex according to golangci-lint 2019-11-10 00:38:59 +02:00
syncwg all: open-sourcing single-node version 2019-05-23 00:18:06 +03:00
timerpool lib/timerpool: use timer pool in concurrency limiters 2019-05-28 17:20:10 +03:00
uint64set lib/uint64set: remove superflouos check for item existence before deleting it in Set.Subtract 2019-11-09 14:19:47 +02:00
workingsetcache lib/workingsetcache: remove data race when resetting c.misses 2019-09-22 19:36:49 +03:00