signalwire / freeswitch

FreeSWITCH is a Software Defined Telecom Stack enabling the digital transformation from proprietary telecom switches to a versatile software implementation that runs on any commodity hardware. From a Raspberry PI to a multi-core server, FreeSWITCH can unlock the telecommunications potential of any device.
https://freeswitch.com/#getting-started
Other
3.54k stars 1.41k forks source link

mod_http_cache connecting to s3 causes crash with exit code 1 #2367

Open upcFrost opened 8 months ago

upcFrost commented 8 months ago

Describe the bug mod_http_cache makes FreeSwitch exit with code 1 when it fails to establish the secure connection to S3.

To Reproduce Can't really reproduce it in a controlled manner. Mod_http_cache is used in the fax sending flow as an S3 client to download files from a private S3-compatible storage (provider - Exoscale). Most of the files are "new", so it's used as a client and not really as a cache. The crash occurs roughly every 5000 calls, regardless of the time of the day.

We use mod_python3 for this flow, and as soon as the S3 call was moved from mod_http_cache to boto3 the system stopped crashing, so I'm positive that it was caused by mod_http_cache.

Package version or git hash

Trace logs There's no real log besides journald note that the process exited with code 1. It just exits immediately and then restarts.

andywolk commented 8 months ago

This log file is very limited. Please take a look at gdb commands we recommend executing: https://developer.signalwire.com/guides/freeswitch-crash-getting-a-backtrace-from-a-core-dump/

bt 
bt full 
info threads
thread apply all bt full
upcFrost commented 8 months ago

Full version: backtrace.log

Sorry, can't upload it w/o removing some of the values