I get this warning in the Asterisk CLI about once every ten minutes or so:
[Nov 23 14:47:36] WARNING: res_odbc.c:647
ast_odbc_prepare_and_execute: SQL Execute returned an error -1: HY000:
[MySQL][ODBC 5.1 Driver][mysqld-5.1.73]Deadlock found when trying to get lock; try restarting transaction (105)
[Nov 23 14:47:36] WARNING: res_odbc.c:659
ast_odbc_prepare_and_execute: SQL Execute error -1! Verifying connection to cdr [asterisk-cdr]…
[Nov 23 14:47:36] WARNING: res_odbc.c:763 ast_odbc_sanity_check:
Connection is down attempting to reconnect…
[Nov 23 14:47:36] NOTICE: res_odbc.c:1541 odbc_obj_connect: Connecting cdr
[Nov 23 14:47:36] NOTICE: res_odbc.c:1573 odbc_obj_connect: res_odbc:
Connected to cdr [asterisk-cdr]
Does this imply that I’m missing the ODBC CELs and / or CDRs that were trying to write to MySQL over ODBC when the above occurred?
Or will the ODBC module in Asterisk (or ODBC itself?) recover gracefully and re-emit the CEL or CDR insert that hit the lock and were therefore NOT
written to MySQL?