confTimeout does not work in every case
Concerned version
Version: %2.0.11
Platform: Nginx+Fastcgi
Summary
- Store your config in DBI
- Restart FastCGI
- Make sure the FastCGI process has an existing DB connection in netstat
- filter network traffic to your DB
- Try to access the app
Logs
Feb 19 12:22:47 lemontest LLNG[21390]: [debug] Check configuration for Lemonldap::NG::Handler::PSGI::Main
*stuck*
*Processes receives SIGALRM*
*Still stuck*
Strace shows SIGALRM is received but the syscall resumes
recvfrom(5, 0x55bb21c77c38, 16384, 0, NULL, NULL) = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
--- SIGALRM {si_signo=SIGALRM, si_code=SI_KERNEL} ---
rt_sigreturn({mask=[]}) = -1 EINTR (Interrupted system call)
recvfrom(5,
Possible fixes
- Make syscalls non resumable?
-
❌ Use IO::Socket::Timeout ?