Bug 23156

Summary: При загрузке образа не сообщается о нехватке места
Product: Sisyphus Reporter: Andrey Cherepanov <cas>
Component: alterator-netinstAssignee: Anton V. Boyarshinov <boyarsh>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P3 CC: aen, boyarsh, kharpost
Version: unstableKeywords: usability
Hardware: all   
OS: Linux   
Bug Depends on:    
Bug Blocks: 23155    

Description Andrey Cherepanov 2010-03-15 17:57:56 MSK
Если во время загрузки на /var заканчивается место, то модуль alterator никак не сообщает об этом, а при использовании неполностью закаченного образа выдаётся неверная диагностика.

Ожидаемый результат: модуль должен проверять целостность закаченного образа.
Comment 1 Vladislav Zavjalov 2010-11-03 13:10:49 MSK
Перевешиваю на nobody@, так как модулем заниматься не планирую. Для тех, кто захочет им заниматься, информация следующая:

1. Вся логика этого модуля вынесена за пределы альтератора, в shell-скрипт /usr/bin/alterator-netinst. Этот скрипт, запущенный без аргументов, выдает вполне подробную подсказку по использованию. Cоответственно, всю отладку можно производить с его помощью.
В данном случае я 
- поменял в скрипте значение DATADIR на то, что мне удобно
- запустил ./alterator-netinst -A file://<большой файл>
- запустил ./alterator-netinst -S
первая команда начинат скачивание, вторая - проверяет прогресс и результат.

2. В данном случае, ошибка была внесена коммитом fef59fd2e5e8684fa1da22d76e3062531adabcc3 и заключается в проверке
elif [ "$newsize" -le 0 -o "$(( $newsize - $size ))" -gt 512 ]; then
  status="fail"
...

$newsize - это размер реально скачанного файла, а $size - размер исходного.
Так что надо бы их наоборот вычитать...

Впрочем это всего лишь приведит вместо сообщения
curl: (23) Failed writing body (12472 != 16383); mount: you must specify the filesystem type; unable to mount image

к не сильно более понятному сообщению
curl: (23) Failed writing body (12472 != 16383)

Разбора (и русификации) подобных сообщений в модуле нет, если его хочется - надо дописывать. Скорее всего - научить функцию downloading_status(), чтоб она находила и заменяла наиболее часто встречающиеся сообщения на то, что надо по списку.
Comment 2 AEN 2011-06-28 18:25:07 MSK
2boyarsh@: Хорошо бы реализовать хотя бы пункт 2 из предложения slazav@ , если уже не.
Comment 3 Anton V. Boyarshinov 2011-07-05 14:16:39 MSK
(В ответ на комментарий №2)
> 2boyarsh@: Хорошо бы реализовать хотя бы пункт 2 из предложения slazav@ , если
> уже не.

Реализовано в ноябре 2010