Подключаюсь к базе через драйвер ODBC. Но периодический при обработке входящего звонка выскакивает такая ошибка:
| Код: |
| [2013-11-25 08:26:43] WARNING[15098][C-00000115]: res_odbc.c:1402 _ast_odbc_request_obj2: SetConnectAttr (Txn isolation) returned an error: HY000: [MySQL][ODBC 5.1 Driver]MySQL server has gone away [2013-11-25 08:26:43] WARNING[15098][C-00000115]: func_odbc.c:191 generic_execute: SQL Execute returned an error -1: 08S01: [MySQL][ODBC 5.1 Driver][mysqld-5.5.31-0+wheezy1]MySQL server has gone away (75) [2013-11-25 08:26:43] WARNING[15098][C-00000115]: func_odbc.c:199 generic_execute: SQL Exec Direct failed (-1)![SELECT `clid` FROM `dials` WHERE `dst`=3021698] [2013-11-25 08:26:43] WARNING[15098][C-00000115]: res_odbc.c:608 ast_odbc_direct_execute: SQL Execute error! Verifying connection to asterisk-mysql [asterisk-mysql]... [2013-11-25 08:26:43] WARNING[15098][C-00000115]: res_odbc.c:761 ast_odbc_sanity_check: Connection is down attempting to reconnect... [2013-11-25 08:26:48] NOTICE[15098][C-00000115]: res_odbc.c:1527 odbc_obj_connect: Connecting asterisk-mysql [2013-11-25 08:26:48] NOTICE[15098][C-00000115]: res_odbc.c:1559 odbc_obj_connect: res_odbc: Connected to asterisk-mysql [asterisk-mysql] |
т.е., как я понимаю, связь теряется, потом восстанавливается. Обработка звонка зависает на последних строках, и дальнейшей обработки нет. Если поступает повторный звонок, то все проходит гладко. Происходит это по утрам, т.е. как я предполагаю, астер долго не обращался к базе данных, драйвер отдыхал и потерял связь. Как сделать так, чтоб связь не терялась никогда?
И еще такой баг не могу отловить, так же выскакивает изредка при исходящем звонке:
| Код: |
| [2013-11-24 08:52:49] WARNING[2799][C-000000fc] chan_sip.c: Received response: "Forbidden" from '"Agent one" ;tag=as528a8b65' |
не могу найти причину. Помогает только "sip reload".