exceptions in "Error.log"

You found a bug or have any issues? Please post them here!
Post Reply
User avatar
hdradio
Posts: 625
Joined: 10 Apr 2012 17:36
Location: Crete, Hellas
exceptions in "Error.log"

Post by hdradio »

As you had told me, exceptions that appear in error.log are normal.
But I wonder if it is normal for error.log file getting bigger everyday because of this.
I see everyday exceptions like these:

Code: Select all

04/10/2014 02:57:50 [v3.0.14.17]:********** Error/Exception Information **********
Error Message: ScriptLib-GetNextTracks Error in 'd0100 [d0100.pfs]' at line 5 [1 LeastRecentlyPlayed : Ελληνικά]
Error Type: System.Exception
Error Source: .
Inner Exception: Index was outside the bounds of the array.
********** System Stack Trace **********

Error Message: Index was outside the bounds of the array.
Error Type: System.IndexOutOfRangeException
Error Source: ProppFrexx ONAIR.ProppFrexx.eu b(System.String)
********** System Stack Trace **********
   at ProppFrexx.ie.b(String A_0)
   at ProppFrexx.ie.a(Boolean A_0, String A_1, MediaLibraryGetRandomMode A_2, Nullable`1 A_3)
   at ProppFrexx.ao.a(Object A_0, DateTime A_1, DateTime A_2)
********** Environment Stack Trace **********
   at System.Environment.GetStackTrace(Exception e, Boolean needFileInfo)
   at System.Environment.get_StackTrace()
   at ProppFrexx.aa.a(Exception A_0, Boolean A_1)
   at ProppFrexx.df.a(Exception A_0)
   at ProppFrexx.ao.a(Object A_0, DateTime A_1, DateTime A_2)
   at ProppFrexx.bh.a(DateTime A_0, DateTime A_1, Byte A_2, hh A_3)
   at ProppFrexx.bh.a(Boolean A_0, Byte A_1)
   at ProppFrexx.bh.h()
   at System.Threading.Tasks.Task.InnerInvoke()
   at System.Threading.Tasks.Task.Execute()
   at System.Threading.Tasks.Task.ExecutionContextCallback(Object obj)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)
   at System.Threading.Tasks.Task.ExecuteEntry(Boolean bPreventDoubleExecution)
   at System.Threading.Tasks.ThreadPoolTaskScheduler.LongRunningThreadWork(Object obj)
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart(Object obj)
********** End **********

Code: Select all

04/10/2014 02:57:51 [v3.0.14.17]:********** Error/Exception Information **********
Error Message: ScriptLib-GetNextTracks Error in 'd0100 [d0100.pfs]' at line 6 [1 LeastTimesPlayed : Ελληνικά]
Error Type: System.Exception
Error Source: .
Inner Exception: Index was outside the bounds of the array.
********** System Stack Trace **********

Error Message: Index was outside the bounds of the array.
Error Type: System.IndexOutOfRangeException
Error Source: ProppFrexx ONAIR.ProppFrexx.eu b(System.String)
********** System Stack Trace **********
   at ProppFrexx.ie.b(String A_0)
   at ProppFrexx.ie.a(Boolean A_0, String A_1, MediaLibraryGetRandomMode A_2, Nullable`1 A_3)
   at ProppFrexx.ao.a(Object A_0, DateTime A_1, DateTime A_2)
********** Environment Stack Trace **********
   at System.Environment.GetStackTrace(Exception e, Boolean needFileInfo)
   at System.Environment.get_StackTrace()
   at ProppFrexx.aa.a(Exception A_0, Boolean A_1)
   at ProppFrexx.df.a(Exception A_0)
   at ProppFrexx.ao.a(Object A_0, DateTime A_1, DateTime A_2)
   at ProppFrexx.bh.a(DateTime A_0, DateTime A_1, Byte A_2, hh A_3)
   at ProppFrexx.bh.a(Boolean A_0, Byte A_1)
   at ProppFrexx.bh.h()
   at System.Threading.Tasks.Task.InnerInvoke()
   at System.Threading.Tasks.Task.Execute()
   at System.Threading.Tasks.Task.ExecutionContextCallback(Object obj)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)
   at System.Threading.Tasks.Task.ExecuteEntry(Boolean bPreventDoubleExecution)
   at System.Threading.Tasks.ThreadPoolTaskScheduler.LongRunningThreadWork(Object obj)
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart(Object obj)
********** End **********

Code: Select all

04/10/2014 02:57:51 [v3.0.14.17]:********** Error/Exception Information **********
Error Message: ScriptLib-GetNextTracks Error in 'd0300 [d0300.pfs]' at line 4 [1 Random : Ελληνικά]
Error Type: System.Exception
Error Source: .
Inner Exception: Index was outside the bounds of the array.
********** System Stack Trace **********

Error Message: Index was outside the bounds of the array.
Error Type: System.IndexOutOfRangeException
Error Source: ProppFrexx ONAIR.ProppFrexx.eu b(System.String)
********** System Stack Trace **********
   at ProppFrexx.ie.b(String A_0)
   at ProppFrexx.ie.a(Boolean A_0, String A_1, MediaLibraryGetRandomMode A_2, Nullable`1 A_3)
   at ProppFrexx.ao.a(Object A_0, DateTime A_1, DateTime A_2)
********** Environment Stack Trace **********
   at System.Environment.GetStackTrace(Exception e, Boolean needFileInfo)
   at System.Environment.get_StackTrace()
   at ProppFrexx.aa.a(Exception A_0, Boolean A_1)
   at ProppFrexx.df.a(Exception A_0)
   at ProppFrexx.ao.a(Object A_0, DateTime A_1, DateTime A_2)
   at ProppFrexx.bh.a(DateTime A_0, DateTime A_1, Byte A_2, hh A_3)
   at ProppFrexx.bh.a(Boolean A_0, Byte A_1)
   at ProppFrexx.bh.b(Byte A_0)
   at ProppFrexx.df.n.g()
   at System.Threading.Tasks.Task.InnerInvoke()
   at System.Threading.Tasks.Task.Execute()
   at System.Threading.Tasks.Task.ExecutionContextCallback(Object obj)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)
   at System.Threading.Tasks.Task.ExecuteEntry(Boolean bPreventDoubleExecution)
   at System.Threading.Tasks.ThreadPoolTaskScheduler.LongRunningThreadWork(Object obj)
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart(Object obj)
********** End **********

User avatar
hdradio
Posts: 625
Joined: 10 Apr 2012 17:36
Location: Crete, Hellas
Re: exceptions in "Error.log"

Post by hdradio »

To figure out which tracks this might be, you might open that media library within a new and empty playlist and see which tracks are 'not playable'.
Bernd this is something I can not do because this is a library containing more than 50000 entries.
How can I test so many tracks if are playable or not ?
User avatar
radio42
Site Admin
Posts: 8350
Joined: 05 Apr 2012 16:26
Location: Hamburg, Germany
Contact:
Re: exceptions in "Error.log"

Post by radio42 »

Hmm, then I need to provide some more details in my logs to tell you which file (data) is causing the error...
User avatar
radio42
Site Admin
Posts: 8350
Joined: 05 Apr 2012 16:26
Location: Hamburg, Germany
Contact:
Re: exceptions in "Error.log"

Post by radio42 »

No, this is not what I told you. Exceptions in the "Error.log" file are never normal !
I once told you, that a very specific exception in the debug log file (you send me) can actually happen and was no reason to worry about.
This doesn't mean, that all errors in the "Error.log" file are normal - note, that the debug log and the Error.log are totally different things.
So each exception is subject to investigation...

The errors you are showing here seems to be from an error when parsing a result from the remote media lib "Ελληνικά".
It is hard to say what exact error it is, but it is clear, that the data returned from the Media Library Server leads to an error - meaning the track is not recognized.
As such, some tracks in that "Ελληνικά" media lib are corrupt, do have invalid meta data etc.

To figure out which tracks this might be, you might open that media library within a new and empty playlist and see which tracks are 'not playable'.
Once you figured one or two, please send them over to me to take a look.
User avatar
radio42
Site Admin
Posts: 8350
Joined: 05 Apr 2012 16:26
Location: Hamburg, Germany
Contact:
Re: exceptions in "Error.log"

Post by radio42 »

After sending me some test files we figured the following:

Various files contained 'a lot of garbage' at the beginning of the file (after the TAGs).
ProppFrexx finally played those files fine with a verification size of 96KB (see below).

Some files where encoded using a nonstandard, proprietary MPEG 2.5, Layer I format.
This format is not supported (as it is proprietary).

Some files are missing a mandatory MP3 frame (which includes among other things the duration and total number of frames).

All files (for which the above exception is reported) might been seen as incorrect MP3 files - as such it is good to have this indication!

Some encoders or taggers might have been used with those files which have added invalid or incorrect MP3 frames (garbage) to the beginning of these files!

Notes:
The audio lib I am using (BASS) determines the file format to use by analyzing the file content.
The amount of data to check in order to verify/detect the file format can be adjusted in the general settings (see General/Audio - File Verification Size).
E.g. increasing this value to e.g. 96KB made the file 1. and 2. play fine!
(the verification length excludes any tags that may be at the start of the file)

Post Reply