Return-Path: Delivered-To: apmail-lucene-java-commits-archive@www.apache.org Received: (qmail 35939 invoked from network); 6 Mar 2008 17:21:21 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 6 Mar 2008 17:21:21 -0000 Received: (qmail 74977 invoked by uid 500); 6 Mar 2008 17:21:17 -0000 Delivered-To: apmail-lucene-java-commits-archive@lucene.apache.org Received: (qmail 74962 invoked by uid 500); 6 Mar 2008 17:21:17 -0000 Mailing-List: contact java-commits-help@lucene.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: java-dev@lucene.apache.org Delivered-To: mailing list java-commits@lucene.apache.org Received: (qmail 74951 invoked by uid 99); 6 Mar 2008 17:21:17 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 06 Mar 2008 09:21:17 -0800 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO eris.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 06 Mar 2008 17:20:49 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id E570A1A9832; Thu, 6 Mar 2008 09:20:59 -0800 (PST) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r634355 - /lucene/java/trunk/src/test/org/apache/lucene/index/TestStressIndexing2.java Date: Thu, 06 Mar 2008 17:20:58 -0000 To: java-commits@lucene.apache.org From: mikemccand@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20080306172059.E570A1A9832@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: mikemccand Date: Thu Mar 6 09:20:56 2008 New Revision: 634355 URL: http://svn.apache.org/viewvc?rev=634355&view=rev Log: LUCENE-1204: improve TestStressIndexing2 test by interleaving deletes by term & query Modified: lucene/java/trunk/src/test/org/apache/lucene/index/TestStressIndexing2.java Modified: lucene/java/trunk/src/test/org/apache/lucene/index/TestStressIndexing2.java URL: http://svn.apache.org/viewvc/lucene/java/trunk/src/test/org/apache/lucene/index/TestStressIndexing2.java?rev=634355&r1=634354&r2=634355&view=diff ============================================================================== --- lucene/java/trunk/src/test/org/apache/lucene/index/TestStressIndexing2.java (original) +++ lucene/java/trunk/src/test/org/apache/lucene/index/TestStressIndexing2.java Thu Mar 6 09:20:56 2008 @@ -19,6 +19,7 @@ import org.apache.lucene.analysis.*; import org.apache.lucene.util.LuceneTestCase; +import org.apache.lucene.search.TermQuery; import java.util.*; import java.io.ByteArrayOutputStream; @@ -89,7 +90,6 @@ int nThreads=r.nextInt(5)+1; int iter=r.nextInt(10)+1; int range=r.nextInt(20)+1; - Directory dir1 = new MockRAMDirectory(); Directory dir2 = new MockRAMDirectory(); Map docs = indexRandom(nThreads, iter, range, dir1); @@ -210,7 +210,13 @@ if (term==null || term.field() != idField) break; termDocs1.seek (termEnum); - assertTrue(termDocs1.next()); + if (!termDocs1.next()) { + // This doc is deleted and wasn't replaced + termDocs2.seek(termEnum); + assertFalse(termDocs2.next()); + continue; + } + int id1 = termDocs1.doc(); assertFalse(termDocs1.next()); @@ -420,14 +426,16 @@ return new String(arr); } + public String getIdString() { + return Integer.toString(base + nextInt(range)); + } public void indexDoc() throws IOException { Document d = new Document(); ArrayList fields = new ArrayList(); - int id = base + nextInt(range); - String idString = ""+id; - Field idField = new Field("id", idString, Field.Store.YES, Field.Index.NO_NORMS); + String idString = getIdString(); + Field idField = new Field(idTerm.field(), idString, Field.Store.YES, Field.Index.NO_NORMS); fields.add(idField); int nFields = nextInt(maxFields); @@ -480,11 +488,30 @@ docs.put(idString, d); } + public void deleteDoc() throws IOException { + String idString = getIdString(); + w.deleteDocuments(idTerm.createTerm(idString)); + docs.remove(idString); + } + + public void deleteByQuery() throws IOException { + String idString = getIdString(); + w.deleteDocuments(new TermQuery(idTerm.createTerm(idString))); + docs.remove(idString); + } + public void run() { try { r = new Random(base+range+seed); for (int i=0; i