Stephen Macke created LUCENE-5071:
-------------------------------------

             Summary: problem with Direct IO seek() leading to EOFException
                 Key: LUCENE-5071
                 URL: https://issues.apache.org/jira/browse/LUCENE-5071
             Project: Lucene - Core
          Issue Type: Bug
          Components: core/store
    Affects Versions: 4.3.1, 3.6.2
         Environment: Linux kernel 3.2.0-48-generic
jdk 1.6.0_43
            Reporter: Stephen Macke


I think this actually affects 3.1.0 and up, but I was too lazy to type all 
those out and just included release versions for brevity.

DirectIOLinuxIndexInput in 3.6.2 and NativeUnixIndexInput in 4.3.1 have in 
issue with the seek() method. If we seek() to the end of a file (can happen 
when merger is doing a clone()) whose length is a multiple of 512, then we will 
unnecessarily call refill(), which will throw an EOFException.

Quick fix is to surround refill() with this condition:

if (pos < length()) {
    refill();
}


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to