Use the specially proposed https://lucene.apache.org/core/6_0_1/core/org/apache/lucene/index/IndexWriter.html#addDocuments-java.lang.Iterable- which prevents flush from the cutting block in the middle.
On Tue, Nov 29, 2016 at 12:27 PM, ASKozitsin <askozit...@gmail.com> wrote: > Hi everyone! > > I'm trying to fill RAMDirectory with documents according to BlockJoin > structure: > * child1_1 > * child1_2 > * child1_3 > - parent1 > * child2_1 > * child2_2 > - parent2 > and so on. > > If I have small number of documents (less than 10.000) everything is okay. > I > can search among them. > Also CheckJoinIndex.check(directoryReader, new > QueryBitSetProducer(IntPoint.newExactQuery(IS_PARENT_DOCUMENT, PARENT))); > works fine. > > But if document amount is greater than 10k (for example 50k), I receive > error message "Every segment should have at least one parent, but > _0(6.3.0):c1 does not have any". > > I suppose, that my documents are splitted in several RAMFiles. And this > split divides child-parent block in two files. > > My own check on document collection does not show errors. > Should I avoid RAMDirectory? OR is there any option to control RAMFile > split? > > Thanks in advance! > > > > -- > View this message in context: http://lucene.472066.n3. > nabble.com/BlockJoin-with-RAM-Directory-tp4307818.html > Sent from the Lucene - Java Users mailing list archive at Nabble.com. > > --------------------------------------------------------------------- > To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org > For additional commands, e-mail: java-user-h...@lucene.apache.org > > -- Sincerely yours Mikhail Khludnev