[devel] Q: [python3] posix_fadvise не работает в hasher`е?

Aleksey Avdeev solo на solin.spb.ru
Пт Фев 15 01:30:52 MSK 2013


15.02.2013 00:05, Dmitry V. Levin пишет:
> On Thu, Feb 14, 2013 at 09:15:38PM +0400, Aleksey Avdeev wrote:
>> 14.02.2013 20:38, Dmitry V. Levin пишет:
>>> On Thu, Feb 14, 2013 at 04:00:18PM +0400, Aleksey Avdeev wrote:
>>>> 14.02.2013 13:11, Sergey Vlasov пишет:
>>>>> On Wed, Feb 13, 2013 at 07:49:51PM +0400, Aleksey Avdeev wrote:
>>>>>>   Собирая, на people, python3 (см.
                     ^^^^^^
>>>>>> <http://git.altlinux.org/people/solo/packages/?p=python3.git;a=commit;h=645f68819c3b7c89b0683b9aa8f93c3e375eb287>)
>>>>>> наткнулся на странное поведение теста posix_fadvise (см. man posix_fadvise):
>>>>>>
>>>>>>   При выполнении теста в hasher`е, он возвращает ошибку (и при сборке, и
>>>>>> при ручном запуске):
>>>>>>
>>>>>> ======================================================================
>>>>>> ERROR: test_posix_fadvise (test.test_posix.PosixTester)
>>>>>> ----------------------------------------------------------------------
>>>>>> Traceback (most recent call last):
>>>>>>   File "/usr/src/RPM/BUILD/python3-3.3.0/Lib/test/test_posix.py", line
>>>>>> 234, in test_posix_fadvise
>>>>>>     posix.posix_fadvise(fd, 0, 0, posix.POSIX_FADV_WILLNEED)
>>>>>> OSError: [Errno 22] Invalid argument
>>>>>
>>>>> А chroot при этом находится на tmpfs?  Тогда результат будет зависеть
>>>>> от версии ядра - в некоторых версиях posix_fadvise() при использовании
>>>>> с файлами на tmpfs возвращает ошибку EINVAL вместо того, чтобы молча
>>>>> ничего не делать.
>>>>
>>>>   Да, на tmpfs.
>>>>
>>>>> Сломали, похоже, в районе 3.1:
>>>>>
>>>>>   http://comments.gmane.org/gmane.linux.suse.kernel/3182
>>>>>
>>>>> Починили якобы в 3.6:
>>>>>
>>>>>   http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=commitdiff;h=3d3727cdb07ff17ddc3c551ef8d03d37b60a0372
>>>>>
>>>>> (и тоже из-за обваливающихся тестов, правда, там Ruby лазил в /tmp,
>>>>> где tmpfs можно найти со значительно большей вероятностью, чем в
>>>>> каталоге сборки).
>>>>
>>>>   Проверил, оно действительно не работает в на tmpfs (без hasher`а).
>>>> Спасибо.
>>>>
>>>>   Отключаю тест с комментарием (см.
>>>> <http://git.altlinux.org/people/solo/packages/?p=python3.git;a=commit;h=8405904cd5307a518ce59d50735b586222a777e5>):
>>>> under some kernels not working on tmpfs, see
>>>> http://comments.gmane.org/gmane.linux.suse.kernel/3182
>>>
>>> На Сизифе этот тест должен работать.
>>
>>   А на сборочнице (git.alt) он работать будет?
> 
> Должен работать, по определению.

  OK, проверю.

> 
>> (Если да -- готов включить, хотя это и услознит сборку на people.)
> 
> На people этот тест не работает?

  Да, именно там я на это и наткнулся (см. выделение выше, в цитате
исходного письма): я там использую сборочный chroot на tmpfs.

> 
>>> Просьба без острой необходимости тесты не отключать.
>>
>>   Это понятно.
>>
>>   Сейчас в пакете отключены только те тесты, которые:
>>
>> 1. Были отключены в python3-3.2.3-alt3.
>>
>> 2. То что отключили в федоре, при переходе на 3.3.0.
>>
>>   Мне проверить работу всех отключённых тестов?
> 
> Если не трудно.

  OK. Сделаю, следующим этапом, после сборки тестового окружения
python3-3.3.0.

PS: Сейчас решаю задачу максимально быстрого получения тестовой
инфраструктуры для python3-3.3.0 (python3 + модули + всё что потянется).

-- 

С уважением. Алексей.


----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : signature.asc
Тип     : application/pgp-signature
Размер  : 897 байтов
Описание: OpenPGP digital signature
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20130215/16836e21/attachment.bin>


Подробная информация о списке рассылки Devel