lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From molz <anmol.bha...@gmail.com>
Subject RE: kamikaze
Date Thu, 30 Apr 2009 21:42:13 GMT

Right on. 

-1 if not found, index in the sorted set if found. 

Anmol



Michael Mastroianni wrote:
> 
> Thanks, Anmol. Just so I'm clear on this: findWithIndex(foo) returns -1
> if foo is not found, and some positive integer if it is?
> 
> regards,
> Michael
> 
> -----Original Message-----
> From: molz [mailto:anmol.bhasin@gmail.com] 
> Sent: Thursday, April 30, 2009 3:33 PM
> To: java-user@lucene.apache.org
> Subject: RE: kamikaze
> 
> 
> 
> Hi,
> 
> That method needs to be deprecated. Please use findWithIndex() instead.
> I
> will deprecate that method in the next release. Also, I will enable line
> numbers in it.
> 
> Anmol
> 
> 
> 
> 
> Michael Mastroianni wrote:
>> 
>> Hi-- Using the 1.0.7 jar file, I am having problems with occasional
>> ArrayIndexOutOfBoundsExceptions and StackOverFlowErrors when trying to
>> do a find in a P4DocIdSet. Here is a unit test that I can reliably get
>> to generate a StackOverFlowError. Have you seen this before? Since I'm
>> using the jar file, I can't really do much debugging of this one.
>> 
>> regards,
>> Michael
>> 
>> 
>>     public void testForOutOfBounds()
>>     {
>>         Random rand = new Random(System.currentTimeMillis());
>>         int maxDoc = 350000;
>>         ArrayList<Integer> nums = new ArrayList<Integer>();
>>         HashSet<Integer> seen = new HashSet<Integer>();
>>         for(int i=0; i < 68; ++i)
>>         {
>>             int nextDoc = rand.nextInt(maxDoc);
>>             if(seen.contains(nextDoc))
>>             {
>>                 while(seen.contains(nextDoc))
>>                 {
>>                     nextDoc = rand.nextInt(maxDoc);
>>                 }
>>             }
>>             nums.add(nextDoc);
>>             seen.add(nextDoc);
>>         }
>>         Collections.sort(nums);
>>         DocSet docs = new P4DDocIdSet();
>>         for (Integer integer : nums) 
>>         {
>>             docs.addDoc(integer);
>>         }
>>         boolean got = docs.find(403);
>>     }
>> 
>> -----Original Message-----
>> From: molz [mailto:anmol.bhasin@gmail.com] 
>> Sent: Wednesday, April 29, 2009 10:58 PM
>> To: java-user@lucene.apache.org
>> Subject: RE: kamikaze
>> 
>> 
>>   
>> Hi Michael,
>> 
>> 2 Questions. 
>> 
>> 1. What version of Kamikaze are you running with?
>> 2. Can you try the snippet below and let me know if it fails ? I ran
> it
>> 20
>> times and it did not fail. Maybe there is some difference in the
>> utitlity
>> methods you have ? I am still trying to track down if anything is off
> at
>> my
>> end but does not seem to be.
>> 
>>     public void testMultipleIntersections() 
>>     { 
>>             ArrayList<OpenBitSet> obs = new ArrayList<OpenBitSet>();

>>             ArrayList<DocIdSet> docs = new ArrayList<DocIdSet>(); 
>>         Random rand = new Random(System.currentTimeMillis()); 
>>             int maxDoc = 350000; 
>>             for(int i=0; i < 3; ++i) 
>>             { 
>>                     int numdocs = rand.nextInt(maxDoc); 
>>                     ArrayList<Integer> nums = new 
>> ArrayList<Integer>(); 
>>                     HashSet<Integer> seen = new HashSet<Integer>(); 
>>                     for (int j = 0; j < numdocs; j++) 
>>                 { 
>>                             int nextDoc = rand.nextInt(maxDoc); 
>>                             if(seen.contains(nextDoc)) 
>>                             { 
>>                                     while(seen.contains(nextDoc)) 
>>                                     { 
>>                                             nextDoc = 
>> rand.nextInt(maxDoc); 
>>                                     } 
>>                             } 
>>                             nums.add(nextDoc); 
>>                             seen.add(nextDoc); 
>>                 } 
>>                     Collections.sort(nums); 
>>                     obs.add(createObs(nums, maxDoc)); 
>>                     docs.add(createDocSet(nums)); 
>>             } 
>>             OpenBitSet base = obs.get(0); 
>>             for(int i = 1; i < obs.size(); ++i) 
>>             { 
>>                     base.intersect(obs.get(i)); 
>>             } 
>>             
>>             AndDocIdSet ands = new AndDocIdSet(docs); 
>>             long card1 = base.cardinality(); 
>>             long card2 = ands.size(); 
>>             System.out.println(card1+":"+card2);
>>             assertEquals(card1, card2); 
>>     } 
>> 
>> 
>>     private OpenBitSet createObs(ArrayList<Integer> nums, int maxDoc)
> {
>>       OpenBitSet bitSet = new OpenBitSet(maxDoc);
>>       for(int num:nums)
>>         bitSet.set(num);
>>       return bitSet;
>>     }
>>     
>>     private DocIdSet createDocSet(ArrayList<Integer> nums) {
>>       DocSet p4d = DocSetFactory.getDocSetInstance(0, 35000000,
> 200000,
>>           DocSetFactory.FOCUS.OPTIMAL);
>>       for(int num:nums)
>>        p4d.addDoc(num);
>>       return p4d;
>>     }
>> 
>> I even tried with the following 
>> 
>>   private DocIdSet createDocSet(ArrayList<Integer> nums) {
>>       P4DDocIdSet p4d = new P4DDocIdSet();
>>       for(int num:nums)
>>        p4d.addDoc(num);
>>       return p4d;
>>     }
>> 
>> 
>>  The NPE you mention in the previous emails has been identified as a
> bug
>> and
>> will be fixed in the next release (in a day or two). 
>> 
>> Thanks,
>> Anmol
>> 
>> 
>> -- 
>> View this message in context:
>> http://www.nabble.com/kamikaze-tp23224760p23307098.html
>> Sent from the Lucene - Java Users mailing list archive at Nabble.com.
>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
>> For additional commands, e-mail: java-user-help@lucene.apache.org
>> 
>> 
>> 
>> This e-mail message, and any attachments, is intended only for the use
> of
>> the individual or entity identified in the alias address of this
> message
>> and may contain information that is confidential, privileged and
> subject
>> to legal restrictions and penalties regarding its unauthorized
> disclosure
>> and use. Any unauthorized review, copying, disclosure, use or
> distribution
>> is strictly prohibited. If you have received this e-mail message in
> error,
>> please notify the sender immediately by reply e-mail and delete this
>> message, and any attachments, from your system. Thank you.
>> 
>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
>> For additional commands, e-mail: java-user-help@lucene.apache.org
>> 
>> 
>> 
> 
> -- 
> View this message in context:
> http://www.nabble.com/kamikaze-tp23224760p23322582.html
> Sent from the Lucene - Java Users mailing list archive at Nabble.com.
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
> For additional commands, e-mail: java-user-help@lucene.apache.org
> 
> 
> 
> This e-mail message, and any attachments, is intended only for the use of
> the individual or entity identified in the alias address of this message
> and may contain information that is confidential, privileged and subject
> to legal restrictions and penalties regarding its unauthorized disclosure
> and use. Any unauthorized review, copying, disclosure, use or distribution
> is strictly prohibited. If you have received this e-mail message in error,
> please notify the sender immediately by reply e-mail and delete this
> message, and any attachments, from your system. Thank you.
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
> For additional commands, e-mail: java-user-help@lucene.apache.org
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/kamikaze-tp23224760p23324860.html
Sent from the Lucene - Java Users mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org


Mime
View raw message