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

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

Attach filesAttach ScreenshotAdd voteVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    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

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            Unassigned Unassigned
            ndipiazza_gmail Nicholas DiPiazza

            Dates

              Created:
              Updated:

              Issue deployment