From 6c043dd6ffe673ec3c9b1deb5519d12b19b32f72 Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Tue, 14 Oct 2014 20:42:41 +0100 Subject: If an exception makes it to the top of a JobEngine request, catch and log instead of letting it terminate the simulator... --- OpenSim/Framework/Monitoring/JobEngine.cs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'OpenSim/Framework/Monitoring/JobEngine.cs') diff --git a/OpenSim/Framework/Monitoring/JobEngine.cs b/OpenSim/Framework/Monitoring/JobEngine.cs index ea2203f..7dcce6a 100644 --- a/OpenSim/Framework/Monitoring/JobEngine.cs +++ b/OpenSim/Framework/Monitoring/JobEngine.cs @@ -246,7 +246,16 @@ namespace OpenSim.Framework.Monitoring if (LogLevel >= 1) m_log.DebugFormat("[JOB ENGINE]: Processing job {0}", m_currentJob.Name); - m_currentJob.Callback.Invoke(m_currentJob.O); + try + { + m_currentJob.Callback.Invoke(m_currentJob.O); + } + catch (Exception e) + { + m_log.Error( + string.Format( + "[JOB ENGINE]: Job {0} failed, continuing. Exception ", m_currentJob.Name), e); + } if (LogLevel >= 1) m_log.DebugFormat("[JOB ENGINE]: Processed job {0}", m_currentJob.Name); -- cgit v1.1