David Smiley created LUCENE-4583:
------------------------------------

             Summary: StraightBytesDocValuesField fails if bytes > 32k
                 Key: LUCENE-4583
                 URL: https://issues.apache.org/jira/browse/LUCENE-4583
             Project: Lucene - Core
          Issue Type: Bug
          Components: core/index
    Affects Versions: 4.0, 4.1, 5.0
            Reporter: David Smiley
            Priority: Critical


I didn't observe any limitations on the size of a bytes based DocValues field 
value in the docs.  It appears that the limit is 32k, although I didn't get any 
friendly error telling me that was the limit.  32k is kind of small IMO; I 
suspect this limit is unintended and as such is a bug.    The following test 
fails:

{code:java}
  public void testBigDocValue() throws IOException {
    Directory dir = newDirectory();
    IndexWriter writer = new IndexWriter(dir, writerConfig(false));

    Document doc = new Document();
    BytesRef bytes = new BytesRef((4+4)*4097);//4096 works
    bytes.length = bytes.bytes.length;//byte data doesn't matter
    doc.add(new StraightBytesDocValuesField("dvField", bytes));
    writer.addDocument(doc);
    writer.commit();
    writer.close();

    DirectoryReader reader = DirectoryReader.open(dir);
    DocValues docValues = MultiDocValues.getDocValues(reader, "dvField");
    //FAILS IF BYTES IS BIG!
    docValues.getSource().getBytes(0, bytes);

    reader.close();
    dir.close();
  }
{code}

--
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: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to