[Moscow.pm] и как с этим AnyEvent::DBI работать

Vladimir Timofeev vovkasm на gmail.com
Пн Окт 25 05:19:39 PDT 2010


2010/10/24 Vladimir Timofeev <vovkasm на gmail.com>:
> 2010/10/24 Ruslan Zakirov <ruz на bestpractical.com>:
>> Привет.
>>
>> И что делать? Писать баги, ждать пока пофиксят, а пока разрабатывать
>> на Impl::Perl? Где там Marc в IRC обитает?
>>
>> Сама-то логика работы с AE::DBI верная или нуно по другому?
> Логика работы верная (и кстати, там нет рекурсии, т.к. у тебя
> внутренний вызов run_bundle внутри коллбэка).
>
> И по поводу что делать.
> Подобной проблемы при нормальном использовании асинхронности (т.е.
> запуска EV::loop из основного процесса) может вообще не возникнуть. Но
> может статься, что действительно какой-то таймаут "течет" в
> AnyEvent::DBI или в EV что-то не так... тогда тесткейсы слать Марку
> ;-)
> Можно и своими силами искать, у меня нет сейчас времени, но быстрый
> взгляд показывает, что "зашивается" в XS_EV_timer из perl_destruct,
> т.е. EV пытается что-то сделать, когда perl уже освободил память...
Короче, вот так будет работать:
@@ -31,6 +31,8 @@

 $done->recv;

+$dbh = undef;
+
 sub run_bundle {
     my $cb = pop;
     my $query = shift;

Т.е. надо уничтожать хендл до global destruct! На вопрос почему,
копать в AnyEvent::DBI::DESTROY ;-)

>
>>
>> 2010/10/23 Vladimir Timofeev <vovkasm на gmail.com>:
>>> А вот если добавить вверху:
>>> use AnyEvent::Impl::Perl;
>>> то все работает...
>>>
>>> 2010/10/23 Ruslan Zakirov <ruz на bestpractical.com>:
>>>> Привет.
>>>>
>>>> Решил, что мне не так важен key/value и что с AnyEvent будет
>>>> достаточно заковык. Тут же натолкнулся на одну из заковык. Никак не
>>>> врублюсь как слать пачки запросов в БД. Тестовый скрипт отрабатывает и
>>>> выходит c Bus Error. Что с этим делать? Возможно неправильно мозги у
>>>> меня работают? И нужели только рекурсией можно нормально реализовать
>>>> функцию run_bundle?
>>>>
>>>>
>>>>
>>>> --
>>>> Best regards, Ruslan.
>>>>
>>>> --
>>>> Moscow.pm mailing list
>>>> moscow-pm на pm.org | http://moscow.pm.org
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Vladimir Timofeev <vovkasm на gmail.com>
>>> --
>>> Moscow.pm mailing list
>>> moscow-pm на pm.org | http://moscow.pm.org
>>>
>>
>>
>>
>> --
>> Best regards, Ruslan.
>> --
>> Moscow.pm mailing list
>> moscow-pm на pm.org | http://moscow.pm.org
>>
>
>
>
> --
> Vladimir Timofeev <vovkasm на gmail.com>
>



-- 
Vladimir Timofeev <vovkasm на gmail.com>


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