MP2 - V2.1 TV Service has malfunctions (1 Viewer)

Status
Not open for further replies.

dhrto

Portal Pro
October 23, 2005
50
8
Home Country
Netherlands Netherlands
Here are the logs on my end. I've included the (similar) error description from Windows eventviewer as well.

MP2-Server service stopped at around 8:06. There was no client activity during this time.
It seems to be related to Mediainfo.dll. I set my configuration to do a library scan/update every day at 8 within the MePo client gui. The crash happens during this scan, from what I can gather.
 

HTPCSourcer

Retired Team Member
  • Premium Supporter
  • May 16, 2008
    11,418
    2,335
    Home Country
    Germany Germany
    Here are the logs on my end.
    Thank you, perfect.(y)

    MP2-Server service stopped at around 8:06.
    The last entry in server.log is at 08:06:40
    [2017-01-06 08:06:40,625] [73610286] [72 ] [DEBUG] - Adding media item with name Boogiepop Phantom (2000) S01E07 - Until Ure In My Arms Again (Boogiepop Phantom - S01E07 - Until Ure In My Arms Again - [V-A].mkv

    It seems to be related to Mediainfo.dll.
    .NET runtime is terminated at 08:06:32
    MediaInfo.dll logs its issue at 08:06:34

    So for what it is good, the server survived this for six seconds ;). By the way, is there any message in the event protocol that the Server service was terminated?

    Now for the reasons I would think that the .NET terminating is the cause of everything happening after.
    Description: The process was terminated due to an unhandled exception.
    Exception Info: System.AccessViolationException
    at MediaInfoLib.MediaInfo.MediaInfo_Open(IntPtr, System.String)
    at MediaInfoLib.MediaInfo_Open(System.String)
    at MediaPortal.Extensions.MetadataExtractors.VideoMetadataExtractor.VideoMetadataExtractor.ReadMediaInfo(MediaPortal.Common.ResourceAccess.IFileSystemResourceAccessor)
    at MediaPortal.Extensions.MetadataExtractors.VideoMetadataExtractor.VideoMetadataExtractor.TryExtractMetadata(MediaPortal.Common.ResourceAccess.IResourceAccessor, System.Collections.Generic.IDictionary`2<System.Guid,System.Collections.Generic.IList`1<MediaPortal.Common.MediaManagement.MediaItemAspect>>, Boolean)
    at MediaPortal.Common.Services.MediaManagement.MediaAccessor.ExtractMetadata(MediaPortal.Common.ResourceAccess.IResourceAccessor, System.Collections.Generic.IEnumerable`1<MediaPortal.Common.MediaManagement.IMetadataExtractor>, System.Collections.Generic.IDictionary`2<System.Guid,System.Collections.Generic.IList`1<MediaPortal.Common.MediaManagement.MediaItemAspect>>, Boolean)
    at MediaPortal.Common.Services.MediaManagement.MediaAccessor.ExtractMetadata(MediaPortal.Common.ResourceAccess.IResourceAccessor, System.Collections.Generic.IEnumerable`1<System.Guid>, System.Collections.Generic.IDictionary`2<System.Guid,System.Collections.Generic.IList`1<MediaPortal.Common.MediaManagement.MediaItemAspect>>, Boolean)
    at MediaPortal.Common.Services.MediaManagement.ImportDataflowBlocks.ImporterWorkerDataflowBlockBase.ExtractMetadata(MediaPortal.Common.ResourceAccess.IResourceAccessor, System.Collections.Generic.IDictionary`2<System.Guid,System.Collections.Generic.IList`1<MediaPortal.Common.MediaManagement.MediaItemAspect>>, Boolean)
    at MediaPortal.Common.Services.MediaManagement.ImportDataflowBlocks.MetadataExtractorBlock+<ProcessMediaItem>d__3.MoveNext()
    at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].Start[[MediaPortal.Common.Services.MediaManagement.ImportDataflowBlocks.MetadataExtractorBlock+<ProcessMediaItem>d__3, MediaPortal.Common, Version=2.1.1612.9730, Culture=neutral, PublicKeyToken=null]](<ProcessMediaItem>d__3 ByRef)
    at MediaPortal.Common.Services.MediaManagement.ImportDataflowBlocks.MetadataExtractorBlock.ProcessMediaItem(MediaPortal.Common.Services.MediaManagement.PendingImportResourceNewGen)
    at System.Threading.Tasks.Dataflow.TransformBlock`2[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].ProcessMessageWithTask(System.Func`2<System.__Canon,System.Threading.Tasks.Task`1<System.__Canon>>, System.Collections.Generic.KeyValuePair`2<System.__Canon,Int64>)
    at System.Threading.Tasks.Dataflow.TransformBlock`2+<>c__DisplayClass10[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].<.ctor>b__4(System.Collections.Generic.KeyValuePair`2<System.__Canon,Int64>)
    at System.Threading.Tasks.Dataflow.Internal.TargetCore`1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].ProcessMessagesLoopCore()
    at System.Threading.Tasks.Dataflow.Internal.TargetCore`1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].<ProcessAsyncIfNecessary_Slow>b__3(System.Object)
    at System.Threading.Tasks.Task.InnerInvoke()
    at System.Threading.Tasks.Task.Execute()
    at System.Threading.Tasks.Task.ExecutionContextCallback(System.Object)
    at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
    at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
    at System.Threading.Tasks.Task.ExecuteWithThreadLocal(System.Threading.Tasks.Task ByRef)
    at System.Threading.Tasks.Task.ExecuteEntry(Boolean)
    at System.Threading.Tasks.Task.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem()
    at System.Threading.ThreadPoolWorkQueue.Dispatch()
    at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()

    @henso , any idea what might be happening here?
     

    HTPCSourcer

    Retired Team Member
  • Premium Supporter
  • May 16, 2008
    11,418
    2,335
    Home Country
    Germany Germany
    At this time it is not clear which file exactly is causing the exceptions. There is continued logging after the event, so which file do you think is causing this?
     

    henso

    Development Group
  • Team MediaPortal
  • February 16, 2012
    2,341
    829
    Home Country
    Denmark Denmark
    At this time it is not clear which file exactly is causing the exceptions.
    The one being imported at the time. ;) I see your point. @dhrto : Maybe try to refresh the shares manually, one at a time.
     
    Last edited by a moderator:

    henso

    Development Group
  • Team MediaPortal
  • February 16, 2012
    2,341
    829
    Home Country
    Denmark Denmark
    the mentioned file
    When the file is logged it already was analyzed by mediainfo, so that was expected. It's currently not possible to see in the log which file is causing it.
     

    HTPCSourcer

    Retired Team Member
  • Premium Supporter
  • May 16, 2008
    11,418
    2,335
    Home Country
    Germany Germany
    @dhrto , to identify the file in combination with MP2 at fault you could try the following
    1. Move ca. half of the files away from your folder
    2. Reimport
    3. If error still happens, move again half of the remaining elements away and reimport. If this time you have no crash, start adding files, that you moved away in step 1
    Continue step 3 until you have nailed things down to the culprit.
     

    dhrto

    Portal Pro
    October 23, 2005
    50
    8
    Home Country
    Netherlands Netherlands
    Unfortunately it still crashes with MediaInfo.dll v 0.7.91. I will try to identify the file with your instructions.

    From a software perspective, it would be better if a crash of MediaInfo.dll due to a faulting file does not take along the MP2-Service. MP2-Service should just reload MediaInfo.dll and continu with the next file. From a user's perspective this would be preferred I think. The user will only notice one / some files not showing up in the library.
     

    HTPCSourcer

    Retired Team Member
  • Premium Supporter
  • May 16, 2008
    11,418
    2,335
    Home Country
    Germany Germany
    From a software perspective, it would be better if a crash of MediaInfo.dll due to a faulting file does not take along the MP2-Service.
    I agree that it is certainly preferable to have a sub-module quit gracefully and inform the user that something went wrong here. We will need to nail this down to some specific root cause though before drawing conclusions about the true nature of the problem.
     
    Status
    Not open for further replies.

    Users who are viewing this thread

    Top Bottom