It's an issue with WhileMatchFilter.  I've created issue HBASE-2258...

On 24 February 2010 18:25, Ryan Rawson <ryano...@gmail.com> wrote:

> That is very interesting, there are definitely some hidden performance
> landmines in the filter code... you have clearly found one.
>
> strange in that while match filter is just a thin wrapper.
>
>
>
> On Tue, Feb 23, 2010 at 11:22 PM, Dan Washusen <d...@reactive.org> wrote:
> > OK, a bit more info; removing the WhileMatchFilter drops the scans down
> to
> > 25ms each.
> >
> > Updated scan looks like:
> >
> >> Scan scan = new Scan(getRandomRow(this.rand, this.totalRows));
> >>
> >> scan.addColumn(FAMILY_NAME, QUALIFIER_NAME);
> >>
> >> scan.setFilter(new PageFilter(120));
> >>
> >>
> > The slow scan uses:
> >
> >> Scan scan = new Scan(getRandomRow(this.rand, this.totalRows));
> >>
> >> scan.addColumn(FAMILY_NAME, QUALIFIER_NAME);
> >>
> >> scan.setFilter(new *WhileMatchFilter*(new PageFilter(120)));
> >>
> >>
> >
> >
> > On 24 February 2010 18:17, Dan Washusen <d...@reactive.org> wrote:
> >
> >> Hey All,
> >> While testing the recent MemStoreScanner slowness I noticed that each
> scan
> >> in the randomSeekScan test takes about 19 seconds to complete.  The scan
> in
> >> question provides a startRow and a WhileMatchFilter containing a
> PageFilter
> >> that asks for 120 rows.  I would have expected this scan to return in
> >> roughly the same amount of time as a scan that specifies a startRow and
> >> stopRow that spans a similar number of rows.
> >>
> >> Before I start investigating further I was wondering if anyone had any
> >> thoughts?
> >>
> >> Cheers,
> >> Dan
> >>
> >> p.s. Running the test on the latest 0.20 code...
> >>
> >
>

Reply via email to