v0.0.72: ретраи pull (3 попытки), корректная ошибка лимита сессии, счётчик дедупа
Deploy drhider / validate (push) Canceled after 0s
Deploy drhider / validate (push) Canceled after 0s
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
# v0.0.72 — Ретраи pull, корректная ошибка лимита, счётчик дедупа (2026-08-24)
|
||||
|
||||
_code-fixes. По итогам код-ревью (см. `infra/2026-08-24-upload-logic-schema.md`)._
|
||||
|
||||
## 1. Ретраи pull (site/routes/api_bp.py, `upload_refs`)
|
||||
- `PULL_RETRIES = 3`, `PULL_RETRY_DELAY = 2` (сек).
|
||||
- Pull из ВМ-буфера теперь в цикле: при любой ошибке (DNS `gaierror -5`, сеть) — до 3 попыток
|
||||
с паузой 2с. После исчерпания — проброс исходной ошибки (502 «Pull failed»).
|
||||
- Закрывает инцидент 18:42 (разовый DNS-сбой ронял всю загрузку).
|
||||
|
||||
## 2. Корректная ошибка лимита сессии (`upload_refs`)
|
||||
- `add_file` возвращает `False` и для «сессия исчезла», и для «превышен лимит 500МБ».
|
||||
- Теперь: при `False` — если `get_files(sid) is None` → 404 «Session not found»;
|
||||
иначе (лимит) → файл пропускается (`delete` с ВМ) и загрузка продолжается.
|
||||
Раньше оба случая давали ложное «Session not found».
|
||||
|
||||
## 3. Счётчик «Добавлено из папки» (site/templates/index.html)
|
||||
- `addFileWithDedup` теперь возвращает `true` (файл добавлен) / `false` (дедуп).
|
||||
- `added++` только при `true` — дубли больше не завышают счётчик.
|
||||
- Проверено: папка [Договор.txt, Договор.txt (дубль), Акт.txt] → «Добавлено из папки: 2 файла».
|
||||
|
||||
## Проверка
|
||||
- `node --check` — OK, `py_compile` (app.py, api_bp.py) — OK.
|
||||
- Локально: счётчик дедупа работает (2 файла при одном дубле).
|
||||
- Ретраи/лимит — на проде после деплоя.
|
||||
- Версия 0.0.71 → 0.0.72.
|
||||
Reference in New Issue
Block a user