Page 1 of 2

Crash and more

Posted: 04 Jun 2014 22:00
by hdradio
After too many tests I let PF to run OnAir. First day was 30/05/14.
For 5 days everything was running smooth. But at 00:10 last night it crashed. I was lucky that I was awake and listening that time and I could restart it 5 minutes later.
Today I was very busy and I didn't notice that all day not any overlay played (advertisement, time announce etc).
Tonight when I found the problem I saw the debug log and had too many exception errors. The problems in debug log start from 23:45 last night.
My overlay calendar is empty.
So I switched back to my own old and stable software.

My problem now is that I had scheduled many spots in PF thinking that I 'll use it from now on.
But now I have to start again from start.

Bernd I know that you are in vacations and I don't like to bother you, but can you please (when you find time) take a look at the files I am sending you (debug logs and calendar file).
There must been a problem on calendar file because the exception is the following :

Code: Select all

04/06/2014 21:15:02: OverlayScheduler: ERROR: Calendar 'S:\proppfrexx\Advertising\Overlay.calendar' could not be read! An item with the same key has already been added.
04/06/2014 21:15:02: ReadOverlayCalendarStorage-Exception: 04/06/2014 21:15:02 [v3.0.13.25]:********** Error/Exception Information **********
Error Message: An item with the same key has already been added.
Error Type: System.ArgumentException
Error Source: mscorlib.Void ThrowArgumentException(System.ExceptionResource)
********** System Stack Trace **********
   at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
   at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
   at DevExpress.XtraScheduler.Data.AppointmentCollectionLoaderRecurrence.CreatePatternRecurrenceIdTable(AppointmentBaseCollection patternAppointments)
   at DevExpress.XtraScheduler.Data.AppointmentCollectionLoaderRecurrence.LoadAppointments()
   at DevExpress.XtraScheduler.Xml.AppointmentCollectionXmlPersistenceHelper.ParseXmlDocument(XmlNode root)
   at DevExpress.XtraScheduler.Xml.StorageXmlConverter`1.ParseXmlDocument(XmlNode root)
   at DevExpress.XtraScheduler.Xml.StorageXmlConverter`1.<>c__DisplayClass1.<ReadXml>b__0()
   at DevExpress.XtraScheduler.PersistentObjectStorage`1.LoadObjectsCore(Boolean keepNonPersistentInformation, LoadObjectsCoreHandler handler)
   at DevExpress.XtraScheduler.Xml.StorageXmlConverter`1.ReadXml(Stream stream)
   at DevExpress.XtraScheduler.Xml.StorageXmlConverter`1.ReadXml(String fileName)
   at DevExpress.XtraScheduler.AppointmentCollection.ReadXml(String fileName)
   at ProppFrexx.da.a3()
********** Environment Stack Trace **********
   at System.Environment.GetStackTrace(Exception e, Boolean needFileInfo)
   at System.Environment.get_StackTrace()
   at ProppFrexx.ab.a(Exception A_0, Boolean A_1)
   at ProppFrexx.da.a3()
   at ProppFrexx.da.p(Boolean A_0)
   at ProppFrexx.da.a(Object A_0, ItemClickEventArgs A_1)
   at DevExpress.XtraBars.BarItem.OnClick(BarItemLink link)
   at DevExpress.XtraBars.BarButtonItem.OnClick(BarItemLink link)
   at DevExpress.XtraBars.BarItemLink.OnLinkClick()
   at DevExpress.XtraBars.BarButtonItemLink.OnLinkClick()
   at DevExpress.XtraBars.BarItemLink.OnLinkAction(BarLinkAction action, Object actionArgs)
   at DevExpress.XtraBars.BarButtonItemLink.OnLinkAction(BarLinkAction action, Object actionArgs)
   at DevExpress.XtraBars.BarItemLink.OnLinkActionCore(BarLinkAction action, Object actionArgs)
   at DevExpress.XtraBars.ViewInfo.BarSelectionInfo.ClickLink(BarItemLink link)
   at DevExpress.XtraBars.ViewInfo.BarSelectionInfo.UnPressLink(BarItemLink link)
   at DevExpress.XtraBars.Controls.CustomLinksControl.OnMouseUp(MouseEventArgs e)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at DevExpress.XtraBars.Controls.CustomControl.WndProc(Message& msg)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
   at System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
   at System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
   at System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
   at System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
   at System.Windows.Forms.Application.Run(Form mainForm)
   at ProppFrexx.dw.a(String[] A_0)
********** End **********
If the calendar file can be repaired I 'd appreciate that.

When last night crashed, I created a debug dump file which I am sending you.
Also tonight when I wanted to close PF it again stuck in closing tcp connections and I had to force close it with task manager.
I created another debug dump file that I am sending it to you too.

Re: Crash and more

Posted: 05 Jun 2014 09:52
by hdradio
Bernd. I have already sent you the calendar file.
Check the first dropbox file in your pm.

Re: Crash and more

Posted: 05 Jun 2014 10:51
by hdradio
Unfortunately I don't have a backup.

Re: Crash and more

Posted: 05 Jun 2014 19:34
by radio42
At a first glance it looks like the overlay .calendar file got corrupted.
I am currently unable to download all the dump files as they are to big for the connection I have here.
So if you have a backup of your overlay calendar file please restore that temporarily.
Can you also may be send me your calendar file by its own to take a look at if I can repair it.
And probably find a reason why it got corrupted.

Re: Crash and more

Posted: 05 Jun 2014 20:43
by radio42
Ahh, yes, this one I can get.
I'll try to take a look at.
However, it really seems, that the calendar file got corrupted.

So please use a backup of your calendar file if available!

Re: Crash and more

Posted: 05 Jun 2014 21:32
by radio42
I have forwarded that bug to the component vendor of the scheduler control I am using.
They already confirmed the bug.

The bug is caused by the fact that some appointments in the calendar file have the same "RecurrenceInfo.Id" property value.
So changing them to a unique value would fix the issue.
But that is of course only a temp. fix.
The vendor still is not sure, why and how it could happen, that this property was using the same Id values - they research the issue.

Or did you manually edit the file?

Re: Crash and more

Posted: 05 Jun 2014 23:57
by hdradio
No I did not manually edited the file.
And in fact I am not going try to do that. I am afraid this can cause more harm than good.
I am staying with my old radio automation software until a permanent fix is out.

Re: Crash and more

Posted: 12 Jun 2014 20:47
by hdradio
Any news from dev express ?

Re: Crash and more

Posted: 12 Jun 2014 21:49
by radio42
No News from them. They still can not reproduce the issue and can not explain how this might happen. But I keep you updated as I now have send them a sample app to try with.

Re: Crash and more

Posted: 17 Jun 2014 15:34
by radio42
Please try the new v3.0.13.27 - it contains a fix and workaround as proposed from DevExpress!
I hope this work out, as it is hard to test ;-)
In any case I also added a sanity check with an auto-correction function which will remove any real duplicates automatically in case of an error.