VictoriaMetrics/app/vmselect
Aliaksandr Valialkin 5f52eb7653 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:27:16 +02:00
..
deployment all: open-sourcing cluster version 2019-05-23 00:25:38 +03:00
netstorage app/vmselect/netstorage: hint the OS that tmpBlocksFile is read almost sequentially 2019-09-30 00:13:33 +03:00
prometheus app/vmselect: add -search.latencyOffset flag for tuning the time after data collection when data points become visible in query results 2019-10-28 12:32:36 +02:00
promql app/vmselect/promql: adjust memory limits calculations for incremental aggregate functions 2019-11-08 19:37:43 +02:00
main.go lib/fs: do not postpone directory removal on NFS error 2019-11-10 13:27:16 +02:00
Makefile all: small updates after PR #114 2019-07-24 17:43:43 +03:00
README.md all: open-sourcing cluster version 2019-05-23 00:25:38 +03:00

vmselect performs the following tasks:

  • Splits incoming selects to tasks for vmstorage nodes and issues these tasks to all the vmstorage nodes in the cluster.

  • Merges responses from all the vmstorage nodes and returns a single response.