AF
Asterisk Forum
обсуждения телефонии, VoIP и IP-PBX
12разделов
5 423тем
34 385сообщений
← К списку тем

ODBC Error

Newbies/FAQ Forum 13 сообщений -
#1

здраствуите
я соединил Asterisk с MS SQL и он запрашивает SIP Peers и Dial Plan из базы (всё работает отлично).
В дебаге он мне выдает такой эррор:

Код:


Jan 28 12:52:11] WARNING[8686]: res_odbc.c:649 ast_odbc_prepare_and_execute: SQL Execute returned an error -1: 42000: [FreeTDS][SQL Server]The invalid escape character "\\" was specified in a LIKE predicate. (89)
[Jan 28 12:52:11] WARNING[8686]: res_odbc.c:661 ast_odbc_prepare_and_execute: SQL Execute error -1! Verifying connection to MSSQL [MSSQL]...
[Jan 28 12:52:11] WARNING[8686]: res_odbc.c:765 ast_odbc_sanity_check: Connection is down attempting to reconnect...
[Jan 28 12:52:11] NOTICE[8686]: res_odbc.c:1528 odbc_obj_connect: Connecting MSSQL
[Jan 28 12:52:11] NOTICE[8686]: res_odbc.c:1567 odbc_obj_connect: res_odbc: Connected to MSSQL [MSSQL]

#2

Если это разово - тогда это нормально.

После долгово отсутствия обращение к базе - каждый раз будет в логах такое

_________________
платный суппорт по мере возможностей
#3

нет, ето происходит кажды раз во время звонка и даже тогда когда я не звоню
#4

значит где время жизни соединения очень короткое
смотрите настройки mysql

_________________
платный суппорт по мере возможностей
#5

если можеш скажи название фаила я не мепял ничего
спасибо
#6

ODBC MSSQL всегда работало ненадежно, имхо для продакшена это не пригодно.
_________________
Gentoo Linux || Asterisk 13.1-cert2
Решения телефонии на базе Asterisk || http://it-need.ru
#7

а что ты советуеш в место етого ?
#8

MySQL
_________________
Gentoo Linux || Asterisk 13.1-cert2
Решения телефонии на базе Asterisk || http://it-need.ru
#9

у меня MSSQL Server я думал что ты предложеш другои коннектор
#10

Не использовал, не использую и никогда не буду использовать MSSQL, но:
nikak27 писал(а):
[FreeTDS][SQL Server]The invalid escape character "\\" was specified in a LIKE predicate. (89)

Траблшут один и тот же:
1. Понять в какой момент это происходит
2. Поискать сам запрос на котором это происходит. Судя по всему это запрос с LIKE.
В поисках помогут:
Код:
*CLI> core set verbose 10
*CLI> core set debug 10

_________________
mega-net.ru - IT аутсорсинг
#11

virus_net @ Вт Фев 02, 2016 09:03 писал(а):
Не использовал, не использую и никогда не буду использовать MSSQL, но:
Траблшут один и тот же:
1. Понять в какой момент это происходит
2. Поискать сам запрос на котором это происходит. Судя по всему это запрос с LIKE.
В поисках помогут:
Код:
*CLI> core set verbose 10
*CLI> core set debug 10



зосле етого каждый 40 секунд етот error :

Код:

CDN*CLI> core set verbose 10
Console verbose was 3 and is now 10.
CDN*CLI> core set debug 10
Core debug was OFF and is now 10.
[Feb 2 18:03:53] WARNING[9236]: res_odbc.c:649 ast_odbc_prepare_and_execute: SQL Execute returned an error -1: 42000: [FreeTDS][SQL Server]The invalid escape character "\\" was specified in a LIKE predicate. (89)
[Feb 2 18:03:53] WARNING[9236]: res_odbc.c:661 ast_odbc_prepare_and_execute: SQL Execute error -1! Verifying connection to MSSQL [MSSQL]...
[Feb 2 18:03:53] WARNING[9236]: res_odbc.c:765 ast_odbc_sanity_check: Connection is down attempting to reconnect...
[Feb 2 18:03:53] NOTICE[9236]: res_odbc.c:1528 odbc_obj_connect: Connecting MSSQL
[Feb 2 18:03:53] NOTICE[9236]: res_odbc.c:1567 odbc_obj_connect: res_odbc: Connected to MSSQL [MSSQL]
[Feb 2 18:03:53] WARNING[9236]: res_odbc.c:649 ast_odbc_prepare_and_execute: SQL Execute returned an error -1: 42000: [FreeTDS][SQL Server]The invalid escape character "\\" was specified in a LIKE predicate. (89)
[Feb 2 18:03:53] WARNING[9236]: res_odbc.c:661 ast_odbc_prepare_and_execute: SQL Execute error -1! Verifying connection to MSSQL [MSSQL]...
[Feb 2 18:03:53] WARNING[9236]: res_odbc.c:765 ast_odbc_sanity_check: Connection is down attempting to reconnect...
[Feb 2 18:03:53] NOTICE[9236]: res_odbc.c:1528 odbc_obj_connect: Connecting MSSQL
[Feb 2 18:03:53] NOTICE[9236]: res_odbc.c:1567 odbc_obj_connect: res_odbc: Connected to MSSQL [MSSQL]
[Feb 2 18:03:53] WARNING[9236]: res_odbc.c:649 ast_odbc_prepare_and_execute: SQL Execute returned an error -1: 42000: [FreeTDS][SQL Server]The invalid escape character "\\" was specified in a LIKE predicate. (89)
[Feb 2 18:03:53] WARNING[9236]: res_odbc.c:661 ast_odbc_prepare_and_execute: SQL Execute error -1! Verifying connection to MSSQL [MSSQL]...
[Feb 2 18:03:53] WARNING[9236]: res_odbc.c:765 ast_odbc_sanity_check: Connection is down attempting to reconnect...
[Feb 2 18:03:53] NOTICE[9236]: res_odbc.c:1528 odbc_obj_connect: Connecting MSSQL
[Feb 2 18:03:53] NOTICE[9236]: res_odbc.c:1567 odbc_obj_connect: res_odbc: Connected to MSSQL [MSSQL]
[Feb 2 18:03:53] WARNING[9236]: res_odbc.c:649 ast_odbc_prepare_and_execute: SQL Execute returned an error -1: 42000: [FreeTDS][SQL Server]The invalid escape character "\\" was specified in a LIKE predicate. (89)
[Feb 2 18:03:53] WARNING[9236]: res_odbc.c:661 ast_odbc_prepare_and_execute: SQL Execute error -1! Verifying connection to MSSQL [MSSQL]...
[Feb 2 18:03:53] WARNING[9236]: res_odbc.c:765 ast_odbc_sanity_check: Connection is down attempting to reconnect...
[Feb 2 18:03:53] NOTICE[9236]: res_odbc.c:1528 odbc_obj_connect: Connecting MSSQL
[Feb 2 18:03:53] NOTICE[9236]: res_odbc.c:1567 odbc_obj_connect: res_odbc: Connected to MSSQL [MSSQL]
#12

судя по вот этому
http://stackoverflow.com/questions/17732 ... -predicate

где то банально не правильный запрос

если включите
core set debug 10
в логах может и проскочит какой запрос делаете

_________________
платный суппорт по мере возможностей
#13

это уже так но я не вижу ничего кроме моего еррора

func_odbc.conf :

Код:

[SAVE_AGE]
dsn=MSSQL
writesql=INSERT INTO ages(age) VALUES (${VAL1})


extconfig.conf :

Код:

sipusers => odbc,MSSQL,sip_buddies
sippeers => odbc,MSSQL,sip_buddies
live_extensions => odbc,MSSQL,extensions


и в extensions.conf :

Код:

exten => 123,1,NoOp(tt-monkeys)
same => n,Read(AGE,tt-monkeys,2,,2,4)
same => n,NoOp(+++++++ Your Age is ${AGE})
same => n,Set(ODBC_SAVE_AGE()=${AGE})
same => n,Playback(tt-monkeys)
same => n,Hangup()


и всё работает