Продолжение проблем с fbembed.dll

classic Classic list List threaded Threaded
14 messages Options
Reply | Threaded
Open this post in threaded view
|

Продолжение проблем с fbembed.dll

Andrei K

Добрый день,

Краткое содержание предыдущих серий.
Встроенный ФБ 2.5.3 работает нормально
до версии 2.5.3.26652 включительно.

В сентябре 2013 я попробовал обновиться
до 2.5.3.26700 и все мои автоматические
процессы рухнули, а клиенты начали
жаловаться на AV при выходе из программы.

Я писал об этом здесь:

https://groups.google.com/forum/?hl=en#!topic/ru-firebird/U6hAE_8_xFE

и здесь:

https://groups.google.com/forum/?hl=en#!topic/ru-firebird/aqBf1uGucLE

Тогда же я вернулся на июньскую версию.

Вот сейчас появилось время снова потестировать.
Взял последнюю версию 26748. С ней, при завершении
приложения я через раз получаю такое сообщение об ошибке:


Сигнатура проблемы:
  Имя события проблемы:    BEX
  Имя приложения:    gedemin.exe
  Версия приложения:    2.5.19.8157
  Отметка времени приложения:    2a425e19
  Имя модуля с ошибкой:    MSVCR80.dll_unloaded
  Версия модуля с ошибкой:    0.0.0.0
  Отметка времени модуля с ошибкой:    4dcddbf3
  Смещение исключения:    662c29e1
  Код исключения:    c0000005
  Данные исключения:    00000008
  Версия ОС:    6.1.7601.2.1.0.400.8
  Код языка:    1059
  Дополнительные сведения 1:    0a9e
  Дополнительные сведения 2:    0a9e372d3b4ad19135b953a78882e789
  Дополнительные сведения 3:    0a9e
  Дополнительные сведения 4:    0a9e372d3b4ad19135b953a78882e789


Перед появлением ошибки идет пауза секунд на 5-10. На свой
выпуклый программистский глаз могу сказать, что скорее всего
несколько нитей подвисают на дедлоке, пока он не разрешается
по таймауту. После таймаута нить пытается обратиться  к библиотеке,
которая уже выгружена в другой нити.

Пока снова вынужден вернуться к версии от июня 2013 года. С ней
все работает как часы.




--

---
Вы получили это сообщение, поскольку подписаны на группу "gmane.comp.db.firebird.russian".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email].
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Продолжение проблем с fbembed.dll

Simonov Denis
Andrei K. <[hidden email]> писал(а) в  
своём письме Sun, 23 Mar 2014 22:16:39 +0400:

Скорее всего программа не вызывает fb_shutdown перед выходом. До недавнего  
времени IBExpert тоже падал при завершнении работы правда только с FB3.  
После того, как Алесандр сделал вызов fb_shutdown падения прекратились

>
> Добрый день,
>
> Краткое содержание предыдущих серий.
> Встроенный ФБ 2.5.3 работает нормально
> до версии 2.5.3.26652 включительно.
>
> В сентябре 2013 я попробовал обновиться
> до 2.5.3.26700 и все мои автоматические
> процессы рухнули, а клиенты начали
> жаловаться на AV при выходе из программы.
>
> Я писал об этом здесь:
>
> https://groups.google.com/forum/?hl=en#!topic/ru-firebird/U6hAE_8_xFE
>
> и здесь:
>
> https://groups.google.com/forum/?hl=en#!topic/ru-firebird/aqBf1uGucLE
>
> Тогда же я вернулся на июньскую версию.
>
> Вот сейчас появилось время снова потестировать.
> Взял последнюю версию 26748. С ней, при завершении
> приложения я через раз получаю такое сообщение об ошибке:
>
>
> Сигнатура проблемы:
>   Имя события проблемы:    BEX
>   Имя приложения:    gedemin.exe
>   Версия приложения:    2.5.19.8157
>   Отметка времени приложения:    2a425e19
>   Имя модуля с ошибкой:    MSVCR80.dll_unloaded
>   Версия модуля с ошибкой:    0.0.0.0
>   Отметка времени модуля с ошибкой:    4dcddbf3
>   Смещение исключения:    662c29e1
>   Код исключения:    c0000005
>   Данные исключения:    00000008
>   Версия ОС:    6.1.7601.2.1.0.400.8
>   Код языка:    1059
>   Дополнительные сведения 1:    0a9e
>   Дополнительные сведения 2:    0a9e372d3b4ad19135b953a78882e789
>   Дополнительные сведения 3:    0a9e
>   Дополнительные сведения 4:    0a9e372d3b4ad19135b953a78882e789
>
>
> Перед появлением ошибки идет пауза секунд на 5-10. На свой
> выпуклый программистский глаз могу сказать, что скорее всего
> несколько нитей подвисают на дедлоке, пока он не разрешается
> по таймауту. После таймаута нить пытается обратиться  к библиотеке,
> которая уже выгружена в другой нити.
>
> Пока снова вынужден вернуться к версии от июня 2013 года. С ней
> все работает как часы.
>
>
>
>


--
Написано с помощью почтового клиента Opera: http://www.opera.com/mail/

--

---
Вы получили это сообщение, поскольку подписаны на группу gmane.comp.db.firebird.russian.

Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email].
Настройки подписки и доставки писем: https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Продолжение проблем с fbembed.dll

Andrei K

У нас вызывается FreeLibrary для fbembed.dll при завершении программы.
Добавлю конечно fb_shutdown перед с таймаутом 0. Только, по идее,
в процессе освобождения библиотеки fb_shutdown должен и так
вызываться.


On Monday, March 24, 2014 8:28:41 AM UTC+3, Simonov Denis wrote:
Andrei K. <<a href="javascript:" target="_blank" gdf-obfuscated-mailto="RWs66sfKUEUJ" onmousedown="this.href='javascript:';return true;" onclick="this.href='javascript:';return true;">gs1994-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> писал(а) в  
своём письме Sun, 23 Mar 2014 22:16:39 +0400:

Скорее всего программа не вызывает fb_shutdown перед выходом. До недавнего  
времени IBExpert тоже падал при завершнении работы правда только с FB3.  
После того, как Алесандр сделал вызов fb_shutdown падения прекратились

>
> Добрый день,
>
> Краткое содержание предыдущих серий.
> Встроенный ФБ 2.5.3 работает нормально
> до версии 2.5.3.26652 включительно.
>
> В сентябре 2013 я попробовал обновиться
> до 2.5.3.26700 и все мои автоматические
> процессы рухнули, а клиенты начали
> жаловаться на AV при выходе из программы.
>
> Я писал об этом здесь:
>
> <a href="https://groups.google.com/forum/?hl=en#!topic/ru-firebird/U6hAE_8_xFE" target="_blank" onmousedown="this.href='https://groups.google.com/forum/?hl\75en#!topic/ru-firebird/U6hAE_8_xFE';return true;" onclick="this.href='https://groups.google.com/forum/?hl\75en#!topic/ru-firebird/U6hAE_8_xFE';return true;">https://groups.google.com/forum/?hl=en#!topic/ru-firebird/U6hAE_8_xFE
>
> и здесь:
>
> <a href="https://groups.google.com/forum/?hl=en#!topic/ru-firebird/aqBf1uGucLE" target="_blank" onmousedown="this.href='https://groups.google.com/forum/?hl\75en#!topic/ru-firebird/aqBf1uGucLE';return true;" onclick="this.href='https://groups.google.com/forum/?hl\75en#!topic/ru-firebird/aqBf1uGucLE';return true;">https://groups.google.com/forum/?hl=en#!topic/ru-firebird/aqBf1uGucLE
>
> Тогда же я вернулся на июньскую версию.
>
> Вот сейчас появилось время снова потестировать.
> Взял последнюю версию 26748. С ней, при завершении
> приложения я через раз получаю такое сообщение об ошибке:
>
>
> Сигнатура проблемы:
>   Имя события проблемы:    BEX
>   Имя приложения:    gedemin.exe
>   Версия приложения:    2.5.19.8157
>   Отметка времени приложения:    2a425e19
>   Имя модуля с ошибкой:    MSVCR80.dll_unloaded
>   Версия модуля с ошибкой:    0.0.0.0
>   Отметка времени модуля с ошибкой:    4dcddbf3
>   Смещение исключения:    662c29e1
>   Код исключения:    c0000005
>   Данные исключения:    00000008
>   Версия ОС:    6.1.7601.2.1.0.400.8
>   Код языка:    1059
>   Дополнительные сведения 1:    0a9e
>   Дополнительные сведения 2:    0a9e372d3b4ad19135b953a78882e789
>   Дополнительные сведения 3:    0a9e
>   Дополнительные сведения 4:    0a9e372d3b4ad19135b953a78882e789
>
>
> Перед появлением ошибки идет пауза секунд на 5-10. На свой
> выпуклый программистский глаз могу сказать, что скорее всего
> несколько нитей подвисают на дедлоке, пока он не разрешается
> по таймауту. После таймаута нить пытается обратиться  к библиотеке,
> которая уже выгружена в другой нити.
>
> Пока снова вынужден вернуться к версии от июня 2013 года. С ней
> все работает как часы.
>
>
>
>


--
Написано с помощью почтового клиента Opera: <a href="http://www.opera.com/mail/" target="_blank" onmousedown="this.href='http://www.google.com/url?q\75http%3A%2F%2Fwww.opera.com%2Fmail%2F\46sa\75D\46sntz\0751\46usg\75AFQjCNEwdZtf3630O-tfNgwVt6xFb0QJNg';return true;" onclick="this.href='http://www.google.com/url?q\75http%3A%2F%2Fwww.opera.com%2Fmail%2F\46sa\75D\46sntz\0751\46usg\75AFQjCNEwdZtf3630O-tfNgwVt6xFb0QJNg';return true;">http://www.opera.com/mail/

--

---
Вы получили это сообщение, поскольку подписаны на группу "gmane.comp.db.firebird.russian".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email].
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Продолжение проблем с fbembed.dll

Vlad Khorsun
"Andrei K." ...
>
> У нас вызывается FreeLibrary для fbembed.dll при завершении программы.
> Добавлю конечно fb_shutdown перед с таймаутом 0. Только, по идее,
> в процессе освобождения библиотеки fb_shutdown должен и так
> вызываться.

    Ага, и мы ввели fb_shutdown от нечего делать...

    Ещё раз - вызов fb_shutdown *перед* выходом есть *обязательное* условие для любой
программы, работающей с embedded. Вызов его из FreeLibrary - *не работает* в общем
случае. Ты можешь забить на рекомендации, но это уже твои проблемы.

    В 3-ке, скорее всего, fb_shutdown будет рекомендован и для обычных клиентов, не
только для embedded.

--
Хорсун Влад

PS Я говорил тебе об fb_shutdown почти полгода назад - 1-го октября.


--

---
Вы получили это сообщение, поскольку подписаны на группу gmane.comp.db.firebird.russian.

Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email].
Настройки подписки и доставки писем: https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Продолжение проблем с fbembed.dll

Andrei K
понял. буду добавлять.



On Monday, March 24, 2014 1:11:58 PM UTC+3, hvlad wrote:
"Andrei K." ...
>
> У нас вызывается FreeLibrary для fbembed.dll при завершении программы.
> Добавлю конечно fb_shutdown перед с таймаутом 0. Только, по идее,
> в процессе освобождения библиотеки fb_shutdown должен и так
> вызываться.

    Ага, и мы ввели fb_shutdown от нечего делать...

    Ещё раз - вызов fb_shutdown *перед* выходом есть *обязательное* условие для любой
программы, работающей с embedded. Вызов его из FreeLibrary - *не работает* в общем
случае. Ты можешь забить на рекомендации, но это уже твои проблемы.

    В 3-ке, скорее всего, fb_shutdown будет рекомендован и для обычных клиентов, не
только для embedded.

--
Хорсун Влад

PS Я говорил тебе об fb_shutdown почти полгода назад - 1-го октября.


--

---
Вы получили это сообщение, поскольку подписаны на группу "gmane.comp.db.firebird.russian".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email].
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re[2]: Продолжение проблем с fbembed.dll

Sergey Mereutsa
In reply to this post by Vlad Khorsun
Привет!

>     В 3-ке, скорее всего, fb_shutdown будет рекомендован и для обычных клиентов, не
> только для embedded.

А нельзя его воткнуть внутрь isc_detach_database()? Тогда и
переписывать ничего не потребуется :)

--
Best regards,
 Sergey                            mailto:[hidden email]


--

---
Вы получили это сообщение, поскольку подписаны на группу gmane.comp.db.firebird.russian.

Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email].
Настройки подписки и доставки писем: https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Re[2]: Продолжение проблем с fbembed.dll

Vlad Khorsun
"Sergey Mereutsa" ...
> Привет!
>
>>     В 3-ке, скорее всего, fb_shutdown будет рекомендован и для обычных клиентов, не
>> только для embedded.
>
> А нельзя его воткнуть внутрь isc_detach_database() ?

    Нельзя.

--
Хорсун Влад


--

---
Вы получили это сообщение, поскольку подписаны на группу gmane.comp.db.firebird.russian.

Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email].
Настройки подписки и доставки писем: https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Re[2]: Продолжение проблем с fbembed.dll

Andrei K

если я вызову fb_shutdown для библиотеки fbclient.dll
ничего страшного не произойдет? или лучше не рисковать
и проверять по коду, что библиотека именно fbembed.dll?



On Monday, March 24, 2014 3:49:47 PM UTC+3, hvlad wrote:
"Sergey Mereutsa" ...
> Привет!
>
>>     В 3-ке, скорее всего, fb_shutdown будет рекомендован и для обычных клиентов, не
>> только для embedded.
>
> А нельзя его воткнуть внутрь isc_detach_database() ?

    Нельзя.

--
Хорсун Влад


--

---
Вы получили это сообщение, поскольку подписаны на группу "gmane.comp.db.firebird.russian".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email].
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re[4]: Продолжение проблем с fbembed.dll

Sergey Mereutsa
In reply to this post by Vlad Khorsun
Привет!

>>>     В 3-ке, скорее всего, fb_shutdown будет рекомендован и для обычных клиентов, не
>>> только для embedded.
>>
>> А нельзя его воткнуть внутрь isc_detach_database() ?

>     Нельзя.

Хммм, т.е. лучше сразу запихнуть вызов этой функции в код после
отключения от базы? Или подождать-таки тройку и по результатам
действовать?

--
Best regards,
 Sergey                            mailto:[hidden email]


--

---
Вы получили это сообщение, поскольку подписаны на группу gmane.comp.db.firebird.russian.

Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email].
Настройки подписки и доставки писем: https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Re[2]: Продолжение проблем с fbembed.dll

Vlad Khorsun
In reply to this post by Andrei K
"Andrei K." ...
>
> если я вызову fb_shutdown для библиотеки fbclient.dll


    Так и надо делать

> ничего страшного не произойдет?

    Конечно нет

> или лучше не рисковать
> и проверять по коду, что библиотека именно fbembed.dll?

    Не надо проверять имя библиотеки

--
Хорсун Влад


--

---
Вы получили это сообщение, поскольку подписаны на группу gmane.comp.db.firebird.russian.

Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email].
Настройки подписки и доставки писем: https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Re[4]: Продолжение проблем с fbembed.dll

Vlad Khorsun
In reply to this post by Sergey Mereutsa
"Sergey Mereutsa" ...

> Привет!
>
>>>>     В 3-ке, скорее всего, fb_shutdown будет рекомендован и для обычных клиентов, не
>>>> только для embedded.
>>>
>>> А нельзя его воткнуть внутрь isc_detach_database() ?
>
>>     Нельзя.
>
> Хммм, т.е. лучше сразу запихнуть вызов этой функции в код после
> отключения от базы?

    Я не уверен, что ты сможешь куда-нить подключиться после вызова fb_shutdown.
Этот вызов означает завершение работы с Firebird.

> Или подождать-таки тройку и по результатам действовать?

    При чём тут тройка ? fb_shutdown появился ещё в 2.5 для гарантии корректного
завершения работы embedded движка.

--
Хорсун Влад


--

---
Вы получили это сообщение, поскольку подписаны на группу gmane.comp.db.firebird.russian.

Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email].
Настройки подписки и доставки писем: https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

RE: Re[4]: Продолжение проблем с fbembed.dll

Dmitry Beloshistov
Hi!

> Хммм, т.е. лучше сразу запихнуть вызов этой функции в код после
> отключения от базы?

>    Я не уверен, что ты сможешь куда-нить подключиться после вызова fb_shutdown.
>Этот вызов означает завершение работы с Firebird.

Для прояснения  - detach должен быть отдельно, а fb_shutdown - именно в конце работы программы - я правильно понял?.

Т.е. связка :
  Detach() +  Fb_shutdown() приведет к тому, что возможный последующий вызов attach() обломится?


WBR, Dmitry Beloshistov AKA [-=BDS=-]



--

---
Вы получили это сообщение, поскольку подписаны на группу gmane.comp.db.firebird.russian.

Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email].
Настройки подписки и доставки писем: https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Re[4]: Продолжение проблем с fbembed.dll

Vlad Khorsun
"Dmitry A. Beloshistov" ...
> Hi!
>
>> Хммм, т.е. лучше сразу запихнуть вызов этой функции в код после
>> отключения от базы?
>
>>    Я не уверен, что ты сможешь куда-нить подключиться после вызова fb_shutdown.
>>Этот вызов означает завершение работы с Firebird.
>
> Для прояснения  - detach должен быть отдельно, а fb_shutdown - именно в конце работы программы - я правильно понял?.

    Да

> Т.е. связка :
>  Detach() +  Fb_shutdown() приведет к тому, что возможный последующий вызов attach() обломится?

    Я не пробовал, зуб не дам :)

--
Хорсун Влад


--

---
Вы получили это сообщение, поскольку подписаны на группу gmane.comp.db.firebird.russian.

Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email].
Настройки подписки и доставки писем: https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Продолжение проблем с fbembed.dll

Andrei K
In reply to this post by Andrei K

Поставил вызов fb_shutdown. Уже больше недели все работает без сбоев.

Получается что софт, который без исходников, не сможет перейти
на 2.5.3. А для тех у кого есть исходники, большими буквами надо
написать, что теперь вызов fb_shutdown обязателен.






On Sunday, March 23, 2014 9:16:39 PM UTC+3, Andrei K. wrote:

Добрый день,

Краткое содержание предыдущих серий.
Встроенный ФБ 2.5.3 работает нормально
до версии 2.5.3.26652 включительно.

В сентябре 2013 я попробовал обновиться
до 2.5.3.26700 и все мои автоматические
процессы рухнули, а клиенты начали
жаловаться на AV при выходе из программы.

Я писал об этом здесь:

<a href="https://groups.google.com/forum/?hl=en#!topic/ru-firebird/U6hAE_8_xFE" target="_blank" onmousedown="this.href='https://groups.google.com/forum/?hl\75en#!topic/ru-firebird/U6hAE_8_xFE';return true;" onclick="this.href='https://groups.google.com/forum/?hl\75en#!topic/ru-firebird/U6hAE_8_xFE';return true;">https://groups.google.com/forum/?hl=en#!topic/ru-firebird/U6hAE_8_xFE

и здесь:

<a href="https://groups.google.com/forum/?hl=en#!topic/ru-firebird/aqBf1uGucLE" target="_blank" onmousedown="this.href='https://groups.google.com/forum/?hl\75en#!topic/ru-firebird/aqBf1uGucLE';return true;" onclick="this.href='https://groups.google.com/forum/?hl\75en#!topic/ru-firebird/aqBf1uGucLE';return true;">https://groups.google.com/forum/?hl=en#!topic/ru-firebird/aqBf1uGucLE

Тогда же я вернулся на июньскую версию.

Вот сейчас появилось время снова потестировать.
Взял последнюю версию 26748. С ней, при завершении
приложения я через раз получаю такое сообщение об ошибке:


Сигнатура проблемы:
  Имя события проблемы:    BEX
  Имя приложения:    gedemin.exe
  Версия приложения:    2.5.19.8157
  Отметка времени приложения:    2a425e19
  Имя модуля с ошибкой:    MSVCR80.dll_unloaded
  Версия модуля с ошибкой:    0.0.0.0
  Отметка времени модуля с ошибкой:    4dcddbf3
  Смещение исключения:    662c29e1
  Код исключения:    c0000005
  Данные исключения:    00000008
  Версия ОС:    6.1.7601.2.1.0.400.8
  Код языка:    1059
  Дополнительные сведения 1:    0a9e
  Дополнительные сведения 2:    0a9e372d3b4ad19135b953a78882e789
  Дополнительные сведения 3:    0a9e
  Дополнительные сведения 4:    0a9e372d3b4ad19135b953a78882e789


Перед появлением ошибки идет пауза секунд на 5-10. На свой
выпуклый программистский глаз могу сказать, что скорее всего
несколько нитей подвисают на дедлоке, пока он не разрешается
по таймауту. После таймаута нить пытается обратиться  к библиотеке,
которая уже выгружена в другой нити.

Пока снова вынужден вернуться к версии от июня 2013 года. С ней
все работает как часы.




--

---
Вы получили это сообщение, поскольку подписаны на группу "gmane.comp.db.firebird.russian".
Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес [hidden email].
Чтобы настроить другие параметры, перейдите по ссылке https://groups.google.com/d/optout.