Open asquared opened 8 years ago
I think that's likely: Sinatra likely takes longer to come up, and the way bandshelld is set up it won't wait for Sinatra to boot to start the timer. I agree with the catch-all in f344578 - this is the second time we've come across a one-time exception that would be resolved by keeping the process alive a little longer.
My only issue with cron would be that it makes it a little harder to run bandshell standalone for development, but if we can come up with something that can work either way, I'd be ok with that.
I'm not really opposed to the daemon as long as there's a mechanism to keep it running. Perhaps once we move the player to Debian jessie we can have systemd supervise the two daemons and restart them if they crash.
On Fri, Dec 18, 2015 at 11:10 AM, Mike notifications@github.com wrote:
I think that's likely: Sinatra likely takes longer to come up, and the way bandshelld is set up it won't wait for Sinatra to boot to start the timer. I agree with the catch-all in f344578 https://github.com/concerto/bandshell/commit/f344578291f71c078c8948e2da3694115fb30fd6
- this is the second time we've come across a one-time exception that would be resolved by keeping the process alive a little longer.
My only issue with cron would be that it makes it a little harder to run bandshell standalone for development, but if we can come up with something that can work either way, I'd be ok with that.
— Reply to this email directly or view it on GitHub https://github.com/concerto/bandshell/issues/50#issuecomment-165819177.
I noticed on one of the RPI screens that was getting stuck "off" that bandshell-timer.rb wasn't running. It had crashed with what appears to be a HTTP timeout:
It's probably not good that this is crashing the whole program, but more importantly, perhaps we should look into running this every 10 seconds or so from crontab and avoiding the long-running process. I'm less worried about the actual Bandshell app crashing and burning because Sinatra should have some error handling that limits that to one request.
Also of note is that this seems to have happened just seconds after boot. Maybe it's racing against the main bandshell process's startup?