Summary: | ASTERISK-16980: ODBC Disconnection if call not briged | ||
Reporter: | Antonis Psaras (apsaras) | Labels: | |
Date Opened: | 2010-11-18 09:16:14.000-0600 | Date Closed: | 2011-06-07 14:04:40 |
Priority: | Minor | Regression? | No |
Status: | Closed/Complete | Components: | PBX/pbx_realtime |
Versions: | Frequency of Occurrence | ||
Related Issues: | |||
Environment: | Attachments: | ||
Description: | We have several versions of Asterisk installed working with realtime via ODBC on PostgreSQL Database. We found out that if a call hungup during IVR (before call is briged) we get DB Errors, Disconnection and Reconnection. ****** ADDITIONAL INFORMATION ****** -- Executing GoTo("SIP/isdngw01-00006881", "DialIn|s|1") -- Goto (DialIn,s,1) -- Executing Wait("SIP/isdngw01-00006881", "2") -- Executing Answer("SIP/isdngw01-00006881", "") -- Executing BackGround("SIP/isdngw01-00006881", "welcome") -- <SIP/isdngw01-00006881> Playing 'welcome' (language 'en') [Nov 18 17:07:14] WARNING[26354]: res_odbc.c:105 ast_odbc_prepare_and_execute: SQL Execute returned an error -1: 01000: [unixODBC]Error while executing the query (non-fatal); ERROR: invalid byte sequence for encoding "UTF8": 0xff (110) [Nov 18 17:07:14] WARNING[26354]: res_odbc.c:113 ast_odbc_prepare_and_execute: SQL Execute error -1! Attempting a reconnect... [Nov 18 17:07:14] DEBUG[26354]: res_odbc.c:503 odbc_obj_disconnect: Disconnected 0 from CommServer [CommServer] [Nov 18 17:07:14] DEBUG[26354]: res_odbc.c:510 odbc_obj_disconnect: Database handle deallocated [Nov 18 17:07:14] NOTICE[26354]: res_odbc.c:537 odbc_obj_connect: Connecting CommServer [Nov 18 17:07:14] NOTICE[26354]: res_odbc.c:565 odbc_obj_connect: res_odbc: Connected to CommServer [CommServer] [Nov 18 17:07:14] WARNING[26354]: res_odbc.c:105 ast_odbc_prepare_and_execute: SQL Execute returned an error -1: 01000: [unixODBC]Error while executing the query (non-fatal); ERROR: invalid byte sequence for encoding "UTF8": 0xff (110) [Nov 18 17:07:14] WARNING[26354]: res_odbc.c:113 ast_odbc_prepare_and_execute: SQL Execute error -1! Attempting a reconnect... [Nov 18 17:07:14] DEBUG[26354]: res_odbc.c:503 odbc_obj_disconnect: Disconnected 0 from CommServer [CommServer] [Nov 18 17:07:14] DEBUG[26354]: res_odbc.c:510 odbc_obj_disconnect: Database handle deallocated [Nov 18 17:07:14] NOTICE[26354]: res_odbc.c:537 odbc_obj_connect: Connecting CommServer [Nov 18 17:07:14] NOTICE[26354]: res_odbc.c:565 odbc_obj_connect: res_odbc: Connected to CommServer [CommServer] == Spawn extension (DialIn, s, 3) exited non-zero on 'SIP/isdngw01-00006881' | ||
Comments: | By: Leif Madsen (lmadsen) 2010-12-06 13:55:02.000-0600 I think I'd like to see the SQL log from the PostgreSQL side as well to see what Asterisk is sending. It is possible a field or something Asterisk is expecting to write to (perhaps CDRs?) is not configured properly? By: Antonis Psaras (apsaras) 2010-12-07 17:31:34.000-0600 LOG: statement: SELECT * FROM sip_users WHERE name = '2111765111' LOG: statement: SELECT * FROM extensions WHERE exten = '2109769111' AND context = 'DialIn' AND priority = '1' LOG: statement: SELECT * FROM extensions WHERE exten LIKE '\\_%' AND context = 'DialIn' AND priority = '1' ORDER BY exten LOG: statement: SELECT * FROM extensions WHERE exten = '2109769111' AND context = 'DialIn' AND priority = '1' LOG: statement: SELECT * FROM extensions WHERE exten LIKE '\\_%' AND context = 'DialIn' AND priority = '1' ORDER BY exten LOG: statement: SELECT * FROM extensions WHERE exten = '2109769111' AND context = 'DialIn' AND priority = '1' LOG: statement: SELECT * FROM extensions WHERE exten LIKE '\\_%' AND context = 'DialIn' AND priority = '1' ORDER BY exten LOG: statement: SELECT * FROM extensions WHERE exten = '2109769111' AND context = 'DialIn' AND priority = '1' LOG: statement: SELECT * FROM extensions WHERE exten LIKE '\\_%' AND context = 'DialIn' AND priority = '1' ORDER BY exten LOG: statement: SELECT * FROM extensions WHERE exten = '2109769111' AND context = 'DialIn' AND priority = '1' LOG: statement: SELECT * FROM extensions WHERE exten LIKE '\\_%' AND context = 'DialIn' AND priority = '1' ORDER BY exten LOG: statement: SELECT * FROM extensions WHERE exten = '2109769111' AND context = 'DialIn' AND priority = '2' LOG: statement: SELECT * FROM extensions WHERE exten LIKE '\\_%' AND context = 'DialIn' AND priority = '2' ORDER BY exten LOG: statement: SELECT * FROM extensions WHERE exten = '2109769111' AND context = 'DialIn' AND priority = '2' LOG: statement: SELECT * FROM extensions WHERE exten LIKE '\\_%' AND context = 'DialIn' AND priority = '2' ORDER BY exten LOG: statement: SELECT * FROM extensions WHERE exten = '2109769111' AND context = 'DialIn' AND priority = '2' LOG: statement: SELECT * FROM extensions WHERE exten LIKE '\\_%' AND context = 'DialIn' AND priority = '2' ORDER BY exten LOG: statement: SELECT * FROM extensions WHERE exten = 's' AND context = 'DialIn' AND priority = '1' LOG: statement: SELECT * FROM extensions WHERE exten = 's' AND context = 'DialIn' AND priority = '1' LOG: statement: SELECT * FROM extensions WHERE exten = 's' AND context = 'DialIn' AND priority = '1' LOG: statement: SELECT * FROM extensions WHERE exten = 's' AND context = 'DialIn' AND priority = '2' LOG: statement: SELECT * FROM extensions WHERE exten = 's' AND context = 'DialIn' AND priority = '2' LOG: statement: SELECT * FROM extensions WHERE exten = 's' AND context = 'DialIn' AND priority = '2' LOG: statement: SELECT * FROM extensions WHERE exten = 's' AND context = 'DialIn' AND priority = '3' LOG: statement: SELECT * FROM extensions WHERE exten = 's' AND context = 'DialIn' AND priority = '3' LOG: statement: SELECT * FROM extensions WHERE exten = 's' AND context = 'DialIn' AND priority = '3' ERROR: invalid byte sequence for encoding "UTF8": 0xff HINT: This error can also happen if the byte sequence does not match the encoding expected by the server, which is controlled by "client_encoding". LOG: statement: LOG: statement: set DateStyle to 'ISO' LOG: statement: LOG: statement: set geqo to 'OFF' LOG: statement: LOG: statement: select oid from pg_type where typname='lo' LOG: statement: select version() ERROR: invalid byte sequence for encoding "UTF8": 0xff HINT: This error can also happen if the byte sequence does not match the encoding expected by the server, which is controlled by "client_encoding". LOG: statement: LOG: statement: set DateStyle to 'ISO' LOG: statement: LOG: statement: set geqo to 'OFF' LOG: statement: LOG: statement: select oid from pg_type where typname='lo' LOG: statement: select version() LOG: statement: SELECT * FROM extensions WHERE exten LIKE '\\_%' AND context = 'DialIn' AND priority = '1' ORDER BY exten LOG: statement: SELECT * FROM extensions WHERE exten = 'h' AND context = 'DialIn' AND priority = '1' LOG: statement: SELECT * FROM extensions WHERE exten LIKE '\\_%' AND context = 'DialIn' AND priority = '1' ORDER BY exten LOG: statement: INSERT INTO cdr (calldate,clid,src,dst,dcontext,channel,dstchannel,lastapp,lastdata,duration,billsec,disposition,amaflags,accountcode,uniqueid,userfield) VALUES ('2010-12-08 01:27:56','2111765111','2111765111','s','DialIn','SIP/commgate-00002326','','BackGround','metromall',5,4,'ANSWERED',3,'','1291764476.9000','') By: Leif Madsen (lmadsen) 2011-04-06 12:17:01 This looks like a problem with the type of data encoding being used (UTF-8 not supporting what you're passing?). Is this still an issue? By: Leif Madsen (lmadsen) 2011-04-06 21:06:02 Closing this per a comment from Tilghman on IRC: <Corydon76-home> Probably someone put in an extended ASCII character, which conflicts with how the database expects to receive characters. |