27 lines
2.0 KiB
Markdown
27 lines
2.0 KiB
Markdown
# 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.
|