[Phpmyadmin-devel] Innodb and row exact count
Marc Delisle
marc at infomarc.info
Sat Jul 27 14:20:10 CEST 2013
Le 2013-07-27 07:25, Madhura Jayaratne a écrit :
>
>
>
> On Sat, Jul 27, 2013 at 4:36 PM, Marc Delisle <marc at infomarc.info
> <mailto:marc at infomarc.info>> wrote:
>
> Le 2013-07-27 07:04, Marc Delisle a écrit :
> > Le 2013-07-27 07:02, Madhura Jayaratne a écrit :
> >>
> >>
> >>
> >> On Thu, Jul 25, 2013 at 1:39 AM, Marc Delisle
> <marc at infomarc.info <mailto:marc at infomarc.info>
> >> <mailto:marc at infomarc.info <mailto:marc at infomarc.info>>> wrote:
> >>
> >> Le 2013-06-12 17:04, Marc Delisle a écrit :
> >> > Le 2013-06-12 03:23, Michal Čihař a écrit :
> >> >> Hi
> >> >>
> >> >> Dne Tue, 11 Jun 2013 13:20:44 -0400
> >> >> Marc Delisle <marc at infomarc.info
> <mailto:marc at infomarc.info> <mailto:marc at infomarc.info
> <mailto:marc at infomarc.info>>>
> >> napsal(a):
> >> >>
> >> >>> I don't find a winning solution so I'm seeking for
> advice. In
> >> this bug
> >> >>> report [0], we see that it's annoying to have
> incorrect page
> >> navigation
> >> >>> (page selector and arrows) for InnoDB.
> >> >>>
> >> >>> However, when I apply my proposed patch (which forces
> an exact
> >> count in
> >> >>> sql.php), I see delays for larger InnoDB tables.
> >> >>>
> >> >>> For example, on MySQL 5.5.31, the first time I browse
> a table
> >> having one
> >> >>> million rows, I wait for 9 seconds. I tried with 0.5
> million
> >> and it was
> >> >>> about 5 seconds. A few minutes afterwards, even after
> closing the
> >> >>> browser, my big table starts to display in two seconds.
> >> >>>
> >> >>> I tend to find these delays acceptable and I propose
> to apply
> >> my patch.
> >> >>
> >> >> I agree this is acceptable and agree with the patch for
> 4.0.4.
> >> >>
> >> >> For 4.1 I'd go even further - drop MaxExactCount and
> use only
> >> not exact
> >> >> counts on overview pages and count properly when browsing.
> >> >
> >> > Thanks, I'll have a look at this suggestion for 4.1.
> >> >
> >> >
> >>
> >> Hmmm, I think we have a problem with exact counting, see
> >> https://sourceforge.net/p/phpmyadmin/bugs/4027/
> >>
> >> It's true that 750 M rows is a lot of rows...
> >>
> >> Would it make things too slow to get the rough count first and
> then get
> >> the exact count if the rough counts is less than some defined
> threshold?
>
> (The title of bug #4027 is "$cfg['MaxExactCount'] is ignored when
> BROWSING is back")
> >
> > That's exactly the goal of the MaxExactCount configuration directive,
> > and I think it could be applied here as well.
> >
> > Would not be too slow, as the rough count is very quick.
> >
>
> My bad.
>
> So I think it's best to use $cfg['MaxExactCount'] in browsing as well.
> However IMO, its default value being 0 would break its purpose.
Not necessarily. You see, the guy reporting bug #4027 was aware of this
directive and can set it to an appropriate value.
In version 3.0.0 we had 20000 as a default value, not sure why we set it
to 0 later.
--
Marc Delisle
http://infomarc.info
More information about the Developers
mailing list