Uploaded image for project: 'Tika'
  1. Tika
  2. TIKA-3186

Tika status endpoint has overlapping lock exception when multiple servers are running (windows only)

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 1.25
    • None
    • server
    • None

    Description

      Steps to reproduce:

      On windows 2016 server

      • Start n tika servers on the same host, where n > 1
      • Start actively parsing corpa documents into each host with multithreaded client program.
      • Turn on a daemon thread that checks each tika server's /status every m milliseconds.
      2020-08-26T00:57:07,140 - INFO  [Thread-34:fusion.tika.TikaServer@153] - {url=http://10.121.26.83:61945} - tika-remote: java.nio.channels.OverlappingFileLockException
      2020-08-26T00:57:07,140 - INFO  [Thread-34:fusion.tika.TikaServer@153] - {url=http://10.121.26.83:61945} - tika-remote:   at sun.nio.ch.SharedFileLockTable.checkList(FileLockTable.java:255)
      2020-08-26T00:57:07,140 - INFO  [Thread-34:fusion.tika.TikaServer@153] - {url=http://10.121.26.83:61945} - tika-remote:   at sun.nio.ch.SharedFileLockTable.add(FileLockTable.java:152)
      2020-08-26T00:57:07,140 - INFO  [Thread-34:fusion.tika.TikaServer@153] - {url=http://10.121.26.83:61945} - tika-remote:   at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:1108)
      2020-08-26T00:57:07,140 - INFO  [Thread-34:fusion.tika.TikaServer@153] - {url=http://10.121.26.83:61945} - tika-remote:   at java.nio.channels.FileChannel.tryLock(FileChannel.java:1155)
      2020-08-26T00:57:07,140 - INFO  [Thread-34:fusion.tika.TikaServer@153] - {url=http://10.121.26.83:61945} - tika-remote:   at org.apache.tika.server.ServerStatusWatcher.writeStatus(ServerStatusWatcher.java:116)
      2020-08-26T00:57:07,140 - INFO  [Thread-34:fusion.tika.TikaServer@153] - {url=http://10.121.26.83:61945} - tika-remote:   at org.apache.tika.server.ServerStatusWatcher.shutdown(ServerStatusWatcher.java:167)
      2020-08-26T00:57:07,140 - INFO  [Thread-34:fusion.tika.TikaServer@153] - {url=http://10.121.26.83:61945} - tika-remote:   at org.apache.tika.server.ServerStatusWatcher.access$300(ServerStatusWatcher.java:36)
      2020-08-26T00:57:07,140 - INFO  [Thread-34:fusion.tika.TikaServer@153] - {url=http://10.121.26.83:61945} - tika-remote:   at org.apache.tika.server.ServerStatusWatcher$StatusWatcher.run(ServerStatusWatcher.java:197)
      2020-08-26T00:57:07,140 - INFO  [Thread-34:fusion.tika.TikaServer@153] - {url=http://10.121.26.83:61945} - tika-remote:   at java.lang.Thread.run(Thread.java:748)
      

      Causes status endpoint to return 500 error and will trigger your watcher thread to start restarting tika service because it think it's dead.

      Attachments

        Activity

          People

            Unassigned Unassigned
            ndipiazza_gmail Nicholas DiPiazza
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: