upload module: aborted uploading file (4Gb barrier)

Valery Kholodkov valery+nginxru at grid.net.ru
Thu May 21 19:31:47 MSD 2009


Rush пишет:
> Спасибо всем, кто откликнулся ! Не знаю как ответить всем откликнувшимся 
> сразу - отвечу сам себе, авось заметите:
> 
> 1. Потери в сети 0% гарантированно, у меня прямой гигабытный линк на 
> сервант Intel(R) Xeon(R) CPU E5410 @ 2.33GHz 8Gb + какая то нихреновая 
> корзина на 10 террабайт. Может слишком быстрый сервант и nginx'у не 
> нравится что 50метров в секунду летит ? Сомневаюсь, думаю в рамблерах 
> всяко покруче.
> 2. abort случается и при скорости 1 гигабит, и 100Мбит, и даже 10 (!)
> 3. Обламываются только большие файлы (>2Gb) и в самом конце закачки (??? 
> почему ???)

Насколько я понимаю в современных интернетах, то в них по-видимому есть 
две причины этому:

1) Загрузка забила очередь некоторого сетевого устройства и оно 
отбрасило часть пакетов;
2) Пока загружали файл произошло рассогласование маршрутов и часть 
пакетов потерялась.

Что касается размера, то это, возможно, объясняется теорией больших 
чисел. А именно, если вероятность потери пакета составляет, скажем, 1 на 
миллион, то для загрузок файлов, состоящих из более чем миллиона пакетов 
она будет систематически реализоваться.

> 4. nginx 0.6.32 - 0.6.37, upload module не удалось скомпилить с новым 
> nginx (2Valery Kholodkov - может поставишь теги типа 0.6 и 0.7 ? А лучше 
> две ветки - master и production, в production cherry-pick'ать только 
> проверенное и компиляемое, будем вечно благодарны :)

Только что проверил: 2.0.9 собирается с 0.6.37 и с 0.7.58. Какие ошибки 
выдает компилятор? Какая ОС, платформа?

Что касается веток, то с одной стороны затраты на поддержку двух веток 
пока превышают пользу от них, а с другой стороны запутывают 
нескурпулезного читателя.

> 5. Есть подозрение на глючность брюзеров, удалось залитть 5Гб файл 
> только оперой 64-битной. Но dimkalinux сказал что он залил без проблем. 
> Димка - можно попросить все версии и конфиги в студию/на почту 
> rush.zlo at gmail.com ?
> 6. Расскажите может как ведро затюнить (2.6.29-rc3 - ubuntu server hardy)
> 
> Rush пишет:////
>> upload module не загружает файлы более 4G, отладочный лог ничего 
>> отличного от нормальной загрузки не выдаёт.
>>
>>            client_max_body_size 8G;
>>            upload_max_file_size 16G;
>>
>> 2009/05/20 07:08:18 [alert] 12968#0: *1 aborted uploading file "13 
>> Ghosts [BD Rip] [2001].mkv" to 
>> "/storage/novgorod-e1/DCDN/4/24/0002222244", dest file removed, 
>> client: 213.148.160.88, server: _, request: "POST 
>> /upload/post?X-Progress-ID=7fe1025551864cf5ac2c1324c8d8235e HTTP/1.1", 
>> host: "novgorod-e1.datagrad.ru", referrer: 
>> "http://www.datagrad.ru/hosting/"
>>
>> Точно такая проблема уже всплывала у dimkalinux, но там никто не 
>> обратил внимание на 4Gb барьер, и дело так ничем и не кончилось 
>> (http://www.lexa.ru/nginx-ru/msg23047.html).
>>
>>    * *To*: *nginx-ru at xxxxxxxxx <mailto:nginx-ru at DOMAIN.HIDDEN>*
>>    * *Subject*: *upload module*
>>    * *From*: *dimkalinux <dimkalinux at xxxxxxxxx
>>      <mailto:dimkalinux at DOMAIN.HIDDEN>>*
>>    * Date: Thu, 19 Mar 2009 16:26:52 +0200
>>
>> В error_log постоянно сыпятся такие ошибки:
>>
>> 2009/03/19 13:03:02 [alert] 31030#0: *872396 aborted uploading file
>> "sorokapjatka.avi" to "/var/upload/17/tmp_up/0000000026", dest file
>> removed, client: 10.192.0.45, server: up.lluga.net, request: "POST
>> /upload17?X-Progress-ID=49c203ec01192 HTTP/1.1", host: "up.lluga.net",
>> referrer: "http://up.lluga.net/" <http://up.lluga.net/%22>;
>>
>>
>>
>>
>>
>>
>>
> 
> 
> 


-- 
Best regards,
Valery Kholodkov





More information about the nginx-ru mailing list