Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

Asterisk+ODBC+MySQL переподключение

0

Всем привет.

Обнаружил такую проблему: * оставался без работы около 2 дней, после того, как совершил пробный вызов, то обнаружил такие сообщения:

[Mar 12 14:12:19] WARNING[3773]: res_odbc.c:1355 _ast_odbc_request_obj2: SetConnectAttr (Txn isolation) returned an error: HY000: [MySQL][ODBC 3.51 Driver]MySQL server has gone away
[Mar 12 14:12:19] WARNING[3773]: func_odbc.c:186 generic_execute: SQL Execute returned an error -1: 08S01: [MySQL][ODBC 3.51 Driver][mysqld-5.0.95]MySQL server has gone away (66)
[Mar 12 14:12:19] WARNING[3773]: func_odbc.c:194 generic_execute: SQL Exec Direct failed (-1)![SELECT STATUS FROM blacklist WHERE CALLERID='100']
[Mar 12 14:12:19] WARNING[3773]: res_odbc.c:601 ast_odbc_direct_execute: SQL Execute error! Verifying connection to asterisk [asterisksrc]...
[Mar 12 14:12:19] WARNING[3773]: res_odbc.c:744 ast_odbc_sanity_check: Connection is down attempting to reconnect...
[Mar 12 14:12:19] DEBUG[3773]: res_odbc.c:1445 odbc_obj_disconnect: Disconnected 0 from asterisk [asterisksrc]
[Mar 12 14:12:19] DEBUG[3773]: res_odbc.c:1453 odbc_obj_disconnect: Database handle deallocated
[Mar 12 14:12:19] NOTICE[3773]: res_odbc.c:1480 odbc_obj_connect: Connecting asterisk
[Mar 12 14:12:19] NOTICE[3773]: res_odbc.c:1510 odbc_obj_connect: res_odbc: Connected to asterisk [asterisksrc]
    -- Executing [101@phones:1] NoOp("SIP/100-00000006", "Baned!") in new stack
    -- Executing [101@phones:2] Dial("SIP/100-00000006", "SIP/101,60,rtT") in new stack
  == Using SIP RTP CoS mark 5
    -- Called SIP/101
    -- SIP/101-00000007 is ringing

т.е. получается, что * отвалился по тайаут, но потом подключился и данные все-таки получил. Тут link text советуют увеличивать таймаут подключения к MySQL. Может есть какие-то еще способы? B как поведет себя * когда будет в работе, не будет от БД отваливаться?

удалить закрыть спам изменить тег редактировать

спросил 2013-03-12 14:40:17 +0400

foxm Gravatar foxm
167 46 8 28

1 Ответ

1

а зачем? астерсик ведет себя корректно. переподключается если замечает, что нет коннекта.

что ВАС не устраивает в данной ситуации?

можете использовать вот такой набор

pre-connect => yes

sanitysql => select 1
idlecheck => 600

но только смысла в этом большого нет. реконектится же.

ссылка удалить спам редактировать

ответил 2013-03-12 19:34:38 +0400

meral Gravatar meral flag of Ukraine
23347 24 20 177
http://pro-sip.net/

Comments

Спасибо. Теперь не беспокоит )))

foxm ( 2013-03-12 19:52:16 +0400 )редактировать

Ваш ответ

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

Закладки и информация

Добавить закладку

подписаться на rss ленту новостей

Статистика

Задан: 2013-03-12 14:40:17 +0400

Просмотрен: 1,719 раз

Обновлен: Mar 12 '13

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.