It happened again, and this time I checked the RavenDB. Instead of having two TimeoutData entries (one for the main task and one for the heartbeat task) it had four. Two of them were from today, and two of them were from a few days ago. It may be that this is confusing NServiceBus.
I have attached the TimeoutData Document for the task that stopped running. Notice the time difference between the NServiceBus.TimeSent and NServiceBus.Timeout.Expire, which is 5 seconds. I copied this content at 08:34, so for 6 minutes it has not been updating the TimeoutData document, even though it should do it every 5 seconds.
{
"Destination": {
"Queue": "Flyt.TiosCtcAgent",
"Machine": "GMBSANNTID"
},
"SagaId": "00000000-0000-0000-0000-000000000000",
"State": "PD94bWwgdmVyc2lvbj0iMS4wIiA/Pg0KPE1lc3NhZ2VzIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zOnhzZD0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEiIHhtbG5zPSJodHRwOi8vdGVtcHVyaS5uZXQvTlNlcnZpY2VCdXMuU2NoZWR1bGluZy5NZXNzYWdlcyI+CjxTY2hlZHVsZWRUYXNrPgo8VGFza0lkPmU2YjZlN2NmLTlmYjMtNDhiZS1iZGUwLTc0NmJhZmE3MmRlNzwvVGFza0lkPgo8TmFtZT5Cb290c3RyYXA8L05hbWU+CjxFdmVyeT5QVDVTPC9FdmVyeT4KPC9TY2hlZHVsZWRUYXNrPgo8L01lc3NhZ2VzPg0K",
"Time": "2014-05-21T08:18:00.2114720Z",
"CorrelationId": "2f849e22-d760-4ce6-846b-a33200a9b784\\0",
"OwningTimeoutManager": "Flyt.TiosCtcAgent",
"Headers": {
"NServiceBus.MessageId": "2f849e22-d760-4ce6-846b-a33200a9b784",
"NServiceBus.CorrelationId": "2f849e22-d760-4ce6-846b-a33200a9b784",
"NServiceBus.OriginatingEndpoint": "Flyt.TiosCtcAgent",
"$.diagnostics.originating.hostid": "522caf7d3f53a790fdcc328b6cb0d627",
"NServiceBus.MessageIntent": "Send",
"NServiceBus.Version": "4.4.2",
"NServiceBus.TimeSent": "2014-05-21 08:17:55:211472 Z",
"NServiceBus.OriginatingMachine": "GMBSANNTID",
"NServiceBus.ContentType": "text/xml",
"NServiceBus.EnclosedMessageTypes": "NServiceBus.Scheduling.Messages.ScheduledTask, NServiceBus.Core, Version=4.4.0.0, Culture=neutral, PublicKeyToken=9fc386479f8a226c",
"CorrId": "2f849e22-d760-4ce6-846b-a33200a9b784\\0",
"WinIdName": "GMBDOMENE1\\sanntidintegrasjon",
"NServiceBus.RelatedTo": "5da0ead5-1701-4e2e-9b43-a33200a9b16e",
"NServiceBus.ConversationId": "a00caaba-1eab-48a7-854f-a33100a5c243",
"NServiceBus.IsDeferredMessage": "True",
"NServiceBus.Temporary.DelayDeliveryWith": "00:00:05",
"NServiceBus.Timeout.Expire": "2014-05-21 08:18:00:211472 Z",
"NServiceBus.Timeout.RouteExpiredTimeoutTo": "Flyt.TiosCtcAgent@GMBSANNTID",
"NServiceBus.Timeout.ReplyToAddress": "Flyt.TiosCtcAgent@GMBSANNTID"
}
}
On Tuesday, May 20, 2014 7:02:02 PM UTC+2, Mauro Servienti wrote:
Hi Marius,
I replied on SO.
Sent from my Amazing Yellow Lumia, typos are guaranteed ;-)
We are developing a real-time system using NServiceBus 4.4 where our agents use the Scheduler to run a task every few seconds. Once in a while though the Scheduler just stops calling the action, with no exception and no error message in the Event
viewer or the logs. The agent has another scheduled task, a heartbeat, which monitors the main task. The heartbeat scheduler continues running, but (obviously) reports that the main task is not running.
I have no stacktrace, no error message and the logs are not of any use, since nothing out of the ordinary is reported. The only way to get things to work again is to manually restart the agent. I had a hypothesis that this could be caused by the system time
being adjusted, such that it skips a second. I haven't been able to reproduce this when manually adjusting the time though. Another possibility I can see is that the agent runs out of resources, and is not able to create a new thread. But I have absolutely
no evidence for either of these hypothesis.
Has anyone else experienced this? Does anyone know of a fix?
I have also posted this question to StackOverflow:
http://stackoverflow.com/questions/23732174/nservicebus-scheduler-stops-executing-job
--
You received this message because you are subscribed to the Google Groups "Particular Software" group.