From c85c7f48e8f29923038d4c90cc1a6f9b8bcd7673 Mon Sep 17 00:00:00 2001 From: Christophe Besson Date: Fri, 9 Oct 2026 18:23:52 +0200 Subject: feat(node): refuse an upload on a full disk with a stated reason Nothing on the upload path knew about ENOSPC: a write that found no room raised out of the handler, the catch-all answered "Request failed", and the .part stayed behind holding the space that had run out. The node now refuses with `disk_full` at chunk 0 when the announced size would leave less than 1 GiB free, and at any write that fails with ENOSPC/EDQUOT, dropping the partial. The client carries the code on the error and the transfers panel says "The node's disk is full" in every catalogue. Co-Authored-By: Claude Opus 5.5 --- docs/USERGUIDE.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'docs/USERGUIDE.md') diff --git a/docs/USERGUIDE.md b/docs/USERGUIDE.md index f7e3c72..7afb77b 100644 --- a/docs/USERGUIDE.md +++ b/docs/USERGUIDE.md @@ -1040,8 +1040,9 @@ Better to know now than to go looking for it: text recognition. - **There is no overall storage quota.** Files are capped at 8 GB each — lower or raise it on the node, above — but somebody can still fill a disk one file - at a time. Worth a glance now and then if you have opened a folder to people - you do not know well. + at a time, up to the last gigabyte: the node always keeps 1 GB free, and + refuses uploads beyond that with "The node's disk is full". Worth a glance + now and then if you have opened a folder to people you do not know well. - **Searching the film database by hand has no per-member limit**, and it draws on the node's own quota. Only likely to matter on a large group. - **The record of who uploaded what belongs to the node.** It is kept and it is -- cgit v1.2.3