Hello,

We use Tika embedded in our Java programs and recently upgraded from one of
the last 1.x to 2.x, currently 2.4.1.

Since then, with debug logging on, Tika spews out a few pretty bug and
partially repeating exceptions. This is not a real runtime problem, but
just a distracting nuisance as my attention triggers when seeing stack
traces.

Is there something to do about it?

This is the exif related trace:
2022-10-05 13:16:42,136 DEBUG
[TEST-SequenceBlockMarkerTest.testDierenforum-seed#[5F443E2359FE59DA]]
external.ExternalParser (ExternalParser.java:172) - exit
value for ffmpeg: 0
2022-10-05 13:16:42,140 DEBUG
[TEST-SequenceBlockMarkerTest.testDierenforum-seed#[5F443E2359FE59DA]]
external.ExternalParser (ExternalParser.java:180) - exce
ption trying to run  exiftool
java.io.IOException: Cannot run program "exiftool": error=2, No such file
or directory
       at java.lang.ProcessBuilder.start(ProcessBuilder.java:1128) ~[?:?]
       at java.lang.ProcessBuilder.start(ProcessBuilder.java:1071) ~[?:?]
       at java.lang.Runtime.exec(Runtime.java:592) ~[?:?]
       at java.lang.Runtime.exec(Runtime.java:451) ~[?:?]
       at
org.apache.tika.parser.external.ExternalParser.check(ExternalParser.java:161)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.parser.external.ExternalParsersConfigReader.readCheckTagAndCheck(ExternalParsersConfigReader.java:203)
~[tika-core-2.4.1.jar:2.4.1
]
       at
org.apache.tika.parser.external.ExternalParsersConfigReader.readParser(ExternalParsersConfigReader.java:110)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.parser.external.ExternalParsersConfigReader.read(ExternalParsersConfigReader.java:80)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.parser.external.ExternalParsersConfigReader.read(ExternalParsersConfigReader.java:67)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.parser.external.ExternalParsersConfigReader.read(ExternalParsersConfigReader.java:60)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.parser.external.ExternalParsersFactory.create(ExternalParsersFactory.java:67)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.parser.external.ExternalParsersFactory.create(ExternalParsersFactory.java:60)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.parser.external.ExternalParsersFactory.create(ExternalParsersFactory.java:49)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.parser.external.ExternalParsersFactory.create(ExternalParsersFactory.java:44)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.parser.external.CompositeExternalParser.<init>(CompositeExternalParser.java:42)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.parser.external.CompositeExternalParser.<init>(CompositeExternalParser.java:37)
~[tika-core-2.4.1.jar:2.4.1]
       at
jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method) ~[?:?]
       at
jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
~[?:?]
       at
jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
~[?:?]
       at java.lang.reflect.Constructor.newInstance(Constructor.java:490)
~[?:?]
       at java.lang.Class.newInstance(Class.java:584) ~[?:?]
       at
org.apache.tika.utils.ServiceLoaderUtils.newInstance(ServiceLoaderUtils.java:80)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.config.ServiceLoader.loadStaticServiceProviders(ServiceLoader.java:345)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.parser.DefaultParser.getDefaultParsers(DefaultParser.java:105)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.parser.DefaultParser.<init>(DefaultParser.java:52)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.parser.DefaultParser.<init>(DefaultParser.java:66)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.config.TikaConfig.getDefaultParser(TikaConfig.java:291)
~[tika-core-2.4.1.jar:2.4.1]
       at org.apache.tika.config.TikaConfig.access$900(TikaConfig.java:87)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.config.TikaConfig$ParserXmlLoader.createDefault(TikaConfig.java:878)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.config.TikaConfig$ParserXmlLoader.createDefault(TikaConfig.java:824)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.config.TikaConfig$XmlLoader.loadOverall(TikaConfig.java:648)
~[tika-core-2.4.1.jar:2.4.1]
       at org.apache.tika.config.TikaConfig.<init>(TikaConfig.java:170)
~[tika-core-2.4.1.jar:2.4.1]
       at org.apache.tika.config.TikaConfig.<init>(TikaConfig.java:150)
~[tika-core-2.4.1.jar:2.4.1]
       at org.apache.tika.config.TikaConfig.<init>(TikaConfig.java:142)
~[tika-core-2.4.1.jar:2.4.1]
       at org.apache.tika.config.TikaConfig.<init>(TikaConfig.java:138)
~[tika-core-2.4.1.jar:2.4.1]
       at io.openindex.sax.SAXTestCase.getHandler(SAXTestCase.java:119)
~[test-classes/:?]
       at io.openindex.sax.SAXTestCase.getHandler(SAXTestCase.java:112)
~[test-classes/:?]
       at io.openindex.sax.SAXTestCase.getHandler(SAXTestCase.java:106)
~[test-classes/:?]
       at
io.openindex.sax.readable.marker.block.SequenceBlockMarkerTest.testDierenforum(SequenceBlockMarkerTest.java:91)
~[test-classes/:?]
       at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
Method) ~[?:?]
       at
jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[?:?]
       at
jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[?:?]
       at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
       at
com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1758)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:946)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:390)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.ThreadLeakControl.forkTimeoutingTask(ThreadLeakControl.java:843)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.ThreadLeakControl$3.evaluate(ThreadLeakControl.java:490)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:955)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:840)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:891)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:902)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:390)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.ThreadLeakControl.forkTimeoutingTask(ThreadLeakControl.java:843)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.ThreadLeakControl$2.evaluate(ThreadLeakControl.java:426)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.RandomizedRunner.runSuite(RandomizedRunner.java:716)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.RandomizedRunner.access$200(RandomizedRunner.java:138)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.RandomizedRunner$2.run(RandomizedRunner.java:637)
~[randomizedtesting-runner-2.8.0.jar:?]
Caused by: java.io.IOException: error=2, No such file or directory
       at java.lang.ProcessImpl.forkAndExec(Native Method) ~[?:?]
       at java.lang.ProcessImpl.<init>(ProcessImpl.java:340) ~[?:?]
       at java.lang.ProcessImpl.start(ProcessImpl.java:271) ~[?:?]
       at java.lang.ProcessBuilder.start(ProcessBuilder.java:1107) ~[?:?]
       ... 59 more

And here the Tesseract related trace:
2022-10-05 13:16:42,331 DEBUG
[TEST-SequenceBlockMarkerTest.testDierenforum-seed#[5F443E2359FE59DA]]
external.ExternalParser (ExternalParser.java:180) - exce
ption trying to run  tesseract
java.io.IOException: Cannot run program "tesseract": error=2, No such file
or directory
       at java.lang.ProcessBuilder.start(ProcessBuilder.java:1128) ~[?:?]
       at java.lang.ProcessBuilder.start(ProcessBuilder.java:1071) ~[?:?]
       at java.lang.Runtime.exec(Runtime.java:592) ~[?:?]
       at java.lang.Runtime.exec(Runtime.java:451) ~[?:?]
       at
org.apache.tika.parser.external.ExternalParser.check(ExternalParser.java:161)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.parser.ocr.TesseractOCRParser.hasTesseract(TesseractOCRParser.java:187)
~[tika-parsers-standard-package-2.4.1.jar:2.4.1]
       at
org.apache.tika.parser.ocr.TesseractOCRParser.initialize(TesseractOCRParser.java:529)
~[tika-parsers-standard-package-2.4.1.jar:2.4.1]
       at
org.apache.tika.config.ServiceLoader.loadStaticServiceProviders(ServiceLoader.java:347)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.parser.DefaultParser.getDefaultParsers(DefaultParser.java:105)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.parser.DefaultParser.<init>(DefaultParser.java:52)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.parser.DefaultParser.<init>(DefaultParser.java:66)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.config.TikaConfig.getDefaultParser(TikaConfig.java:291)
~[tika-core-2.4.1.jar:2.4.1]
       at org.apache.tika.config.TikaConfig.access$900(TikaConfig.java:87)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.config.TikaConfig$ParserXmlLoader.createDefault(TikaConfig.java:878)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.config.TikaConfig$ParserXmlLoader.createDefault(TikaConfig.java:824)
~[tika-core-2.4.1.jar:2.4.1]
       at
org.apache.tika.config.TikaConfig$XmlLoader.loadOverall(TikaConfig.java:648)
~[tika-core-2.4.1.jar:2.4.1]
       at org.apache.tika.config.TikaConfig.<init>(TikaConfig.java:170)
~[tika-core-2.4.1.jar:2.4.1]
       at org.apache.tika.config.TikaConfig.<init>(TikaConfig.java:150)
~[tika-core-2.4.1.jar:2.4.1]
       at org.apache.tika.config.TikaConfig.<init>(TikaConfig.java:142)
~[tika-core-2.4.1.jar:2.4.1]
       at org.apache.tika.config.TikaConfig.<init>(TikaConfig.java:138)
~[tika-core-2.4.1.jar:2.4.1]
       at io.openindex.sax.SAXTestCase.getHandler(SAXTestCase.java:119)
~[test-classes/:?]
       at io.openindex.sax.SAXTestCase.getHandler(SAXTestCase.java:112)
~[test-classes/:?]
       at io.openindex.sax.SAXTestCase.getHandler(SAXTestCase.java:106)
~[test-classes/:?]
       at
io.openindex.sax.readable.marker.block.SequenceBlockMarkerTest.testDierenforum(SequenceBlockMarkerTest.java:91)
~[test-classes/:?]
       at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
Method) ~[?:?]
       at
jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[?:?]
       at
jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[?:?]
       at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
       at
com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1758)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:946)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:390)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.ThreadLeakControl.forkTimeoutingTask(ThreadLeakControl.java:843)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.ThreadLeakControl$3.evaluate(ThreadLeakControl.java:490)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:955)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:840)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:891)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:902)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:390)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.ThreadLeakControl.forkTimeoutingTask(ThreadLeakControl.java:843)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.ThreadLeakControl$2.evaluate(ThreadLeakControl.java:426)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.RandomizedRunner.runSuite(RandomizedRunner.java:716)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.RandomizedRunner.access$200(RandomizedRunner.java:138)
~[randomizedtesting-runner-2.8.0.jar:?]
       at
com.carrotsearch.randomizedtesting.RandomizedRunner$2.run(RandomizedRunner.java:637)
~[randomizedtesting-runner-2.8.0.jar:?]
Caused by: java.io.IOException: error=2, No such file or directory
       at java.lang.ProcessImpl.forkAndExec(Native Method) ~[?:?]
       at java.lang.ProcessImpl.<init>(ProcessImpl.java:340) ~[?:?]
       at java.lang.ProcessImpl.start(ProcessImpl.java:271) ~[?:?]
       at java.lang.ProcessBuilder.start(ProcessBuilder.java:1107) ~[?:?]
       ... 44 more

Thanks,
Markus

Reply via email to