From d07fe130bfd1ecef1fcfc4d6a86df28925cc52b0 Mon Sep 17 00:00:00 2001 From: capJavert Date: Sun, 14 Jun 2026 08:23:20 +0200 Subject: [PATCH 1/2] docs: clarify dump/snapshot staging uses TMPDIR, not --dump-dir/--snapshot-dir Creating a dump or snapshot first builds an uncompressed staging copy in the directory pointed to by TMPDIR (default /tmp), not in --dump-dir or --snapshot-dir. On instances with a large database and a small /tmp partition this causes "No space left on device" even when the configured output directory has free space. Document the behavior and the TMPDIR fix. --- resources/self_hosting/configuration/reference.mdx | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/resources/self_hosting/configuration/reference.mdx b/resources/self_hosting/configuration/reference.mdx index 411323002..0903c35b2 100644 --- a/resources/self_hosting/configuration/reference.mdx +++ b/resources/self_hosting/configuration/reference.mdx @@ -125,6 +125,10 @@ Dumpless upgrade are not currently atomic. It is possible some processes fail an Sets the directory where Meilisearch will create dump files. + +`--dump-dir` only controls where the final compressed `.dump` file is written. While creating a dump, Meilisearch first builds an uncompressed copy of your data in a temporary staging directory. This directory is located in the path indicated by the `TMPDIR` environment variable, defaulting to `/tmp` on most systems, and not in `--dump-dir`. On instances with a large database and a small `/tmp` partition, this can cause `No space left on device` errors even when `--dump-dir` points to a volume with plenty of free space. To avoid this, set `TMPDIR` to a directory on a volume with enough space for an uncompressed copy of your data before launching Meilisearch. + + [Learn more about creating dumps](/reference/api/management/create-dump). ### Import dump @@ -293,6 +297,10 @@ When using the configuration file, it is also possible to explicitly pass a bool Sets the directory where Meilisearch will store snapshots. + +`--snapshot-dir` only controls where the final `.snapshot` file is written. While creating a snapshot, Meilisearch first copies a full flat copy of your database into a temporary staging directory. This directory is located in the path indicated by the `TMPDIR` environment variable, defaulting to `/tmp` on most systems, and not in `--snapshot-dir`. On instances with a large database and a small `/tmp` partition, this can cause `No space left on device` errors even when `--snapshot-dir` points to a volume with plenty of free space. To avoid this, set `TMPDIR` to a directory on a volume with enough space for a full copy of your database before launching Meilisearch. + + ### Uncompressed snapshots **Environment variable**: `MEILI_EXPERIMENTAL_NO_SNAPSHOT_COMPACTION`
From c2d153c048e361a32cd97fc730342c962fa4938e Mon Sep 17 00:00:00 2001 From: capJavert Date: Sun, 14 Jun 2026 10:02:49 +0200 Subject: [PATCH 2/2] feat: adjust note --- resources/self_hosting/configuration/reference.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/self_hosting/configuration/reference.mdx b/resources/self_hosting/configuration/reference.mdx index 0903c35b2..c7f811413 100644 --- a/resources/self_hosting/configuration/reference.mdx +++ b/resources/self_hosting/configuration/reference.mdx @@ -298,7 +298,7 @@ When using the configuration file, it is also possible to explicitly pass a bool Sets the directory where Meilisearch will store snapshots. -`--snapshot-dir` only controls where the final `.snapshot` file is written. While creating a snapshot, Meilisearch first copies a full flat copy of your database into a temporary staging directory. This directory is located in the path indicated by the `TMPDIR` environment variable, defaulting to `/tmp` on most systems, and not in `--snapshot-dir`. On instances with a large database and a small `/tmp` partition, this can cause `No space left on device` errors even when `--snapshot-dir` points to a volume with plenty of free space. To avoid this, set `TMPDIR` to a directory on a volume with enough space for a full copy of your database before launching Meilisearch. +`--snapshot-dir` only controls where the final `.snapshot` file is written. While creating a snapshot, Meilisearch first copies your entire database (the raw database files) into a temporary staging directory. This directory is located in the path indicated by the `TMPDIR` environment variable, defaulting to `/tmp` on most systems, and not in `--snapshot-dir`. On instances with a large database and a small `/tmp` partition, this can cause `No space left on device` errors even when `--snapshot-dir` points to a volume with plenty of free space. To avoid this, set `TMPDIR` to a directory on a volume with enough space for a full copy of your database before launching Meilisearch. ### Uncompressed snapshots