I have a strange issue with 188.8.131.52 on a production Asterisk machine at our head office, and the same issue with a production machine at a branch office.
Every now and then, on the head office machine, ODBC CEL and CDR logging will stop working. On examination in the CLI, Asterisk behaves as if the config files for ODBC in the /etc directory are just gone.
Repeated tests have then proved that the config files
(/etc/asterisk/res_odbc.conf, /etc/asterisk/res_pgsql.conf, etc.) ARE in
/etc/asterisk folder and are readable and have the correct contents, and are NOT gone.
On the branch machine, where we do not use ODBC but FreeTDS to log CDRs to an MSSQL DB, TDS stops working randomly as well, with the cdr_tds.so module refusing to load with a message (I forget now the exact wording) that seems to indicate that the Asterisk version is incompatible with the cdr_tds.so ELF object file.
Checking further, I discovered that in both situations, the asterisk executable in /usr/sbin grew by about 40KB compared to its size just after being compiled…
The fix on both machines is to re-copy a backup of the asterisk executable to /usr/sbin to overwrite the new “suddenly larger” asterisk executable, and then restarting asterisk on both machines.
Everything then works correctly again until the next time the
/usr/sbin/asterisk executable again “grows” by +- 40kb – at Head Office stopping ODBC from working, at the branch stopping TDS from working.
This doesn’t happen with our other 14 branches all running 184.108.40.206 on mostly identical hardware.
Anybody encountered this “growing executable” error before?