Kodi Community Forum

Full Version: Lots of MediaInfo crashes with 2.9.3
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I try to summarize it a bit.

1.) I tried to mass re-read the mediainfo from my "*-mediainfo.xml" files. With a datasource filter I reduced the view to a harddisk with ~250 movies. I tried that several times for different harddisks. At some point in the middle of the processing TMM stucks or crashes - always:

Code:
2017-04-04 10:47:38,457 DEBUG [tmmpool-reloadMI-T1-G1116] o.t.core.entities.MediaFile:1486 - start MediaInfo for \\TOWER\disk3\Filme\D\Das Kann Doch Unsren Willi Nicht Erschuettern 1970\Das Kann Doch Unsren Willi Nicht Erschuettern 1970.iso
2017-04-04 10:47:38,769 DEBUG [tmmpool-reloadMI-T1-G1116] o.t.core.entities.MediaFile:1486 - start MediaInfo for \\TOWER\disk3\Filme\D\Das Kann Doch Unsren Willi Nicht Erschuettern 1970\Das Kann Doch Unsren Willi Nicht Erschuettern 1970.iso\VIDEO_TS\VTS_01_1.VOB
2017-04-04 10:47:39,033 DEBUG [tmmpool-reloadMI-T1-G1116] o.t.core.entities.MediaFile:1486 - start MediaInfo for \\TOWER\disk3\Filme\D\Das Kann Doch Unsren Willi Nicht Erschuettern 1970\Das Kann Doch Unsren Willi Nicht Erschuettern 1970.iso\VIDEO_TS\VTS_01_2.VOB
2017-04-04 10:47:39,295 DEBUG [tmmpool-reloadMI-T1-G1116] o.t.core.entities.MediaFile:1486 - start MediaInfo for \\TOWER\disk3\Filme\D\Das Kann Doch Unsren Willi Nicht Erschuettern 1970\Das Kann Doch Unsren Willi Nicht Erschuettern 1970.iso\VIDEO_TS\VTS_01_3.VOB
2017-04-04 10:47:39,390 ERROR [tmmpool-reloadMI-T1-G1116] o.t.core.entities.MediaFile:1376 - Mediainfo could not open file STREAM
java.lang.Error: Invalid memory access
    at com.sun.jna.Native.invokeInt(Native Method)
    at com.sun.jna.Function.invoke(Function.java:390)
    at com.sun.jna.Function.invoke(Function.java:323)
    at com.sun.jna.Library$Handler.invoke(Library.java:236)
    at org.tinymediamanager.thirdparty.$Proxy12.Open_Buffer_Continue(Unknown Source)
    at org.tinymediamanager.thirdparty.MediaInfo.openBufferContinue(MediaInfo.java:130)
    at org.tinymediamanager.core.entities.MediaFile.getMediaInfoSnapshotFromISO(MediaFile.java:1339)
    at org.tinymediamanager.core.entities.MediaFile.gatherMediaInformation(MediaFile.java:1489)
    at org.tinymediamanager.core.MediaFileInformationFetcherTask.call(MediaFileInformationFetcherTask.java:95)
    at org.tinymediamanager.core.MediaFileInformationFetcherTask.call(MediaFileInformationFetcherTask.java:38)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
2017-04-04 10:47:39,391 ERROR [tmmpool-main-task-T35-G342] o.t.core.threading.TmmThreadPool:110 - ThreadPool reloadMI: Error getting result!
java.util.concurrent.ExecutionException: java.lang.Error: Invalid memory access
    at java.util.concurrent.FutureTask.report(Unknown Source)
    at java.util.concurrent.FutureTask.get(Unknown Source)
    at org.tinymediamanager.core.threading.TmmThreadPool.waitForCompletionOrCancel(TmmThreadPool.java:104)
    at org.tinymediamanager.core.movie.tasks.MovieReloadMediaInformationTask.doInBackground(MovieReloadMediaInformationTask.java:68)
    at org.tinymediamanager.core.threading.TmmTask.run(TmmTask.java:125)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.Error: Invalid memory access
    at com.sun.jna.Native.invokeVoid(Native Method)
    at com.sun.jna.Function.invoke(Function.java:374)
    at com.sun.jna.Function.invoke(Function.java:323)
    at com.sun.jna.Library$Handler.invoke(Library.java:236)
    at org.tinymediamanager.thirdparty.$Proxy12.Close(Unknown Source)
    at org.tinymediamanager.thirdparty.MediaInfo.close(MediaInfo.java:459)
    at org.tinymediamanager.core.entities.MediaFile.getMediaInfoSnapshotFromISO(MediaFile.java:1377)
    at org.tinymediamanager.core.entities.MediaFile.gatherMediaInformation(MediaFile.java:1489)
    at org.tinymediamanager.core.MediaFileInformationFetcherTask.call(MediaFileInformationFetcherTask.java:95)
    at org.tinymediamanager.core.MediaFileInformationFetcherTask.call(MediaFileInformationFetcherTask.java:38)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    ... 3 common frames omitted

2.) I can see that TMM hangs in a loop while interpreting audio streams of some "*-mediainfo.xml" files:

Code:
2017-04-04 10:35:19,027 DEBUG [tmmpool-reloadMI-T1-G569] o.t.core.entities.MediaFile:1486 - start MediaInfo for \\TOWER\disk2\Filme\D\Der Exorzismus Von Emily Rose 2005 [HD]\Der Exorzismus Von Emily Rose 2005 [HD].iso
2017-04-04 10:35:19,029 INFO  [tmmpool-reloadMI-T1-G569] o.t.core.entities.MediaFile:1278 - ISO: try to parse \\TOWER\disk2\Filme\D\Der Exorzismus Von Emily Rose 2005 [HD]\Der Exorzismus Von Emily Rose 2005 [HD]-mediainfo.xml
2017-04-04 10:35:56,266 DEBUG [tmmpool-reloadMI-T1-G569] o.t.core.entities.MediaFile:1822 - found language 'english' in 'Der Exorzismus Von Emily Rose 2005 [HD].iso
2017-04-04 10:35:56,267 DEBUG [tmmpool-reloadMI-T1-G569] o.t.core.entities.MediaFile:1822 - found language 'german' in 'Der Exorzismus Von Emily Rose 2005 [HD].iso
2017-04-04 10:35:56,267 DEBUG [tmmpool-reloadMI-T1-G569] o.t.core.entities.MediaFile:1822 - found language 'german' in 'Der Exorzismus Von Emily Rose 2005 [HD].iso
2017-04-04 10:35:56,268 DEBUG [tmmpool-reloadMI-T1-G569] o.t.core.entities.MediaFile:1822 - found language 'english' in 'Der Exorzismus Von Emily Rose 2005 [HD].iso
2017-04-04 10:35:56,268 DEBUG [tmmpool-reloadMI-T1-G569] o.t.core.entities.MediaFile:1822 - found language 'german' in 'Der Exorzismus Von Emily Rose 2005 [HD].iso
2017-04-04 10:35:56,269 DEBUG [tmmpool-reloadMI-T1-G569] o.t.core.entities.MediaFile:1822 - found language 'german' in 'Der Exorzismus Von Emily Rose 2005 [HD].iso
2017-04-04 10:35:56,269 DEBUG [tmmpool-reloadMI-T1-G569] o.t.core.entities.MediaFile:1822 - found language 'english' in 'Der Exorzismus Von Emily Rose 2005 [HD].iso
2017-04-04 10:35:56,270 DEBUG [tmmpool-reloadMI-T1-G569] o.t.core.entities.MediaFile:1822 - found language 'german' in 'Der Exorzismus Von Emily Rose 2005 [HD].iso
2017-04-04 10:35:56,270 DEBUG [tmmpool-reloadMI-T1-G569] o.t.core.entities.MediaFile:1822 - found language 'german' in 'Der Exorzismus Von Emily Rose 2005 [HD].iso
[... thousands of lines]

3.) Another type of error:

Code:
2017-04-04 10:32:59,324 DEBUG [tmmpool-reloadMI-T1-G97] o.t.core.entities.MediaFile:1486 - start MediaInfo for \\TOWER\disk1\Filme\B\Batman 03 Batman Forever 1995 [HD]\Batman 03 Batman Forever 1995 [HD].iso
2017-04-04 10:32:59,325 INFO  [tmmpool-reloadMI-T1-G97] o.t.core.entities.MediaFile:1278 - ISO: try to parse \\TOWER\disk1\Filme\B\Batman 03 Batman Forever 1995 [HD]\Batman 03 Batman Forever 1995 [HD]-mediainfo.xml
2017-04-04 10:32:59,382 WARN  [tmmpool-reloadMI-T1-G97] o.t.core.entities.MediaFile:1295 - ISO: Unable to parse \\TOWER\disk1\Filme\B\Batman 03 Batman Forever 1995 [HD]\Batman 03 Batman Forever 1995 [HD]-mediainfo.xml
javax.xml.bind.UnmarshalException: null
    at javax.xml.bind.helpers.AbstractUnmarshallerImpl.createUnmarshalException(Unknown Source)
    at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.createUnmarshalException(Unknown Source)
    at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(Unknown Source)
    at com.sun.xml.internal.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal(Unknown Source)
    at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(Unknown Source)
    at javax.xml.bind.helpers.AbstractUnmarshallerImpl.unmarshal(Unknown Source)
    at org.tinymediamanager.core.entities.MediaFile.getMediaInfoSnapshotFromISO(MediaFile.java:1285)
    at org.tinymediamanager.core.entities.MediaFile.gatherMediaInformation(MediaFile.java:1489)
    at org.tinymediamanager.core.MediaFileInformationFetcherTask.call(MediaFileInformationFetcherTask.java:95)
    at org.tinymediamanager.core.MediaFileInformationFetcherTask.call(MediaFileInformationFetcherTask.java:38)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Caused by: org.xml.sax.SAXParseException: XML-Dokumentstrukturen müssen innerhalb derselben Entity beginnen und enden.
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
    at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.endEntity(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.endEntity(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.endEntity(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.load(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.peekChar(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
    at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
    ... 14 common frames omitted
2017-04-04 10:32:59,419 ERROR [tmmpool-reloadMI-T1-G97] o.t.core.entities.MediaFile:1387 - Mediainfo could not open STREAM - trying fallback
java.lang.RuntimeException: com.github.stephenc.javaisotools.loopfs.api.LoopFileSystemException: Invalid block size: 0
    at com.github.stephenc.javaisotools.loopfs.spi.AbstractBlockFileSystem.iterator(AbstractBlockFileSystem.java:63)
    at org.tinymediamanager.core.entities.MediaFile.getMediaInfoSnapshotFromISO(MediaFile.java:1309)
    at org.tinymediamanager.core.entities.MediaFile.gatherMediaInformation(MediaFile.java:1489)
    at org.tinymediamanager.core.MediaFileInformationFetcherTask.call(MediaFileInformationFetcherTask.java:95)
    at org.tinymediamanager.core.MediaFileInformationFetcherTask.call(MediaFileInformationFetcherTask.java:38)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Caused by: com.github.stephenc.javaisotools.loopfs.api.LoopFileSystemException: Invalid block size: 0
    at com.github.stephenc.javaisotools.loopfs.iso9660.Iso9660VolumeDescriptorSet.validateBlockSize(Iso9660VolumeDescriptorSet.java:210)
    at com.github.stephenc.javaisotools.loopfs.iso9660.Iso9660VolumeDescriptorSet.deserializePrimary(Iso9660VolumeDescriptorSet.java:128)
    at com.github.stephenc.javaisotools.loopfs.iso9660.Iso9660VolumeDescriptorSet.deserialize(Iso9660VolumeDescriptorSet.java:99)
    at com.github.stephenc.javaisotools.loopfs.spi.AbstractBlockFileSystem.loadVolumeDescriptors(AbstractBlockFileSystem.java:78)
    at com.github.stephenc.javaisotools.loopfs.spi.AbstractBlockFileSystem.iterator(AbstractBlockFileSystem.java:61)
    ... 10 common frames omitted

4.) A concurrency error happened once when right mouse button on a movie and "Reread mediainformation", wait for completion and do that again for the next movie in the list.

Thanks.
Thx for information.

1) new MI seems to be borked again :| we will revert to 0.7.93 which works...
2) can you send me the XML?
3) same, please send XML (seems no be invalid / non-conform)
4) hmm.... have to try...
Thanks for your fast answer.

1.) Mediainfo 0.7.94 is buggy, at least the CLI version exits with "E file not found" errors here. However, TMM interprets my pre-generated "*-mediainfo.xml" files. Mediainfo is not used in that case. My XML files are produced with 0.7.88-0.7.93.

1a.) The first case above was a missing XML file. I did pre-generate the XML with Mediainfo 0.7.93 and it works for that file now. Seems that your included Mediainfo 0.7.94 causes that error - just my guess.

2.) Was pre-generated with Mediainfo 0.7.88. I did a fresh 0.7.93 run. Mediainfo seems to produce garbage on that ISO file. Please ignore that. However here's the XML. After the XML upload I did delete the XML and let TMM read the ISO. Same error. Seems that the ISO has a problem. Will investigate further:

Mediainfo (garbage)

3.) Here's the XML of the third one. This one looks ok. No idea why TMM produces an error here:

Mediainfo
2) the Batman xml IS invalid - the end tags are missing..
(should end with </File> </Mediainfo> to be xml conform)


3) Emily Rose one is completely borked. Seems like a copy protected DVD with structural errors... (or a faulty mediainfo)
At least, it is over 200.000 lines long (!), reports to have around ~3000 video tracks, all with 1min (!), ~3000 audio streams (!) and so on....
So TMM is not looping indefinitely, the xml HAS so many entries Wink
hotfix is live, MediaInfo should not crash TMM anylonger Smile