On Mon, Nov 29, 2010 at 2:52 PM, Michael McCandless <[email protected]> wrote: > On Mon, Nov 29, 2010 at 2:20 PM, Yonik Seeley > <[email protected]> wrote: >> On Mon, Nov 29, 2010 at 1:30 PM, Michael McCandless >> <[email protected]> wrote: >>> I ran my while(1) test for 4.5 hours and no failure! >>> >>> The failure is odd... because the test had just tested TermRangeFilter >>> w/ includeUpper and includeLower both true, and it passed (10001 >>> matches). >>> >>> Then it runs same query, but changing includeUpper to false, expecting >>> 10000 matches, but it got only 9999. >>> >>> So in both cases it's running identical code except for the one if >>> that checks for !includeUpper so it's hard to see how it could be >>> different the 2nd time. >>> >>> I think this could be a JRE bug... >> >> Or just a test bug? >> I took a very quick look at the test... and it looks like the range is >> over a random field - hence there's no reason to think that the upper >> bound matched exactly one doc? If the upper bound value matched more >> than one doc, then you would see this failure? > > I like that theory! > > Meaning, in pulling 10,001 random numbers we got the max value twice. > > Though why doesn't the random seed reproduce it?
Excellent question. Perhaps temporarily lower the range of random numbers generated to increase the odds of this happening, and then see if it's reproducible with the same seed (and then maybe it will be easier to track down why it's not). -Yonik http://www.lucidimagination.com --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
