You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@lucene.apache.org by Grant Ingersoll <gs...@apache.org> on 2009/05/01 01:37:26 UTC

Re: kamikaze

Does Kamikaze have a mailing list?  It seems like, to me anyway, this  
conversation would be more appropriate for that list as it is about  
Kamikaze, not Lucene.

-Grant

On Apr 30, 2009, at 2:42 PM, molz wrote:

>
> 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


Re: kamikaze

Posted by John Wang <jo...@gmail.com>.
You are right, Grant.Michael, Anmol, let's move this to the kamikaze mailing
list:
http://groups.google.com/group/kamikaze-users

Michael, I have added you by default.

-John

On Thu, Apr 30, 2009 at 4:37 PM, Grant Ingersoll <gs...@apache.org>wrote:

> Does Kamikaze have a mailing list?  It seems like, to me anyway, this
> conversation would be more appropriate for that list as it is about
> Kamikaze, not Lucene.
>
> -Grant
>
>
> On Apr 30, 2009, at 2:42 PM, molz wrote:
>
>
>> 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
>
>