ibatis-user-java mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Clinton Begin" <clinton.be...@gmail.com>
Subject Re: QueryForList : How does maxRows work?
Date Mon, 14 May 2007 05:17:40 GMT
With a good database driver, you wouldn't get 1000s of rows back anyway,
whether it supported fetchSize or not.  And most good database drivers will
have an intelligent default for fetch size, or even a self-optimizing one
that you won't want to mess with.

However, if you want to test it out with or without it, you can just add it
as an attribute to <select ... fetchSize="10"> or whatever value makes sense
to your situation.

Clinton

On 5/13/07, BenBaril <benjamin.baril@fbn.ca> wrote:
>
>
> Can you explain how to set the fetch size? As this is something I would be
> curious in. We are mostly concerned about the cost of the bandwidth, as we
> don't want to get back 1000s of rows when we only want a few douzain.
>
> Clinton Begin wrote:
> >
> > PS:  if it hasn't been made clear by my previous posts, if you call
> > queryForList with a maxRows attribute, it will only request that many
> rows
> > back from the database.  It won't bring back all 10k.  This of course
> > depends on the driver, but I've never seen one that does something that
> > silly.  ;-)
> >
> > Clinton
> >
> > On 5/11/07, Clinton Begin <clinton.begin@gmail.com> wrote:
> >>
> >> If it's a proc returning that result set, then I doubt setMaxRows would
> >> help anyway.  You can't just apply a limit outside of the scope of the
> >> proc,
> >> the result set has already been built.
> >>
> >> The only applicable performance factor that you have control of outside
> >> of
> >> the proc is the fetch size, the size of the batches of rows that are
> >> returned at a time.  And even that is only a driver "hint".  iBATIS
> >> supports
> >> it as an attribute of the <select> element.
> >>
> >> Clinton
> >>
> >> On 5/10/07, BenBaril <benjamin.baril@fbn.ca> wrote:
> >> >
> >> >
> >> > I'm working with a small team doing a Proof of Concept at a customer
> >> > location. We're looking at iBATIS as a DAO solution however we have
> >> many
> >> > stored procedures that return upwards of 10k rows. Our previous
> >> solution
> >> > cut
> >> > the number of rows returned to a fixed limit.
> >> >
> >> > Is there any way to do this using iBATIS currently? Since we have no
> >> > handle
> >> > to the statement, I'm at a loss right now.
> >> >
> >> > Any help would be greatly appreciated.
> >> >
> >> > Thanks
> >> >
> >> > Clinton Begin wrote:
> >> > >
> >> > > No, it doesn't call setMaxRows.  Probably a legacy decision for
> >> driver
> >> > > compatibility reasons, but I suppose we're well past that now.  If
> >> you
> >> > > think
> >> > > it will improve performance for you, we can probably add it.  If
> so,
> >> > > please
> >> > > open a JIRA ticket for it.
> >> > >
> >> > > Clinton
> >> > >
> >> > > On 5/10/07, BenBaril < benjamin.baril@fbn.ca> wrote:
> >> > >>
> >> > >>
> >> > >> I'm wondering on how the implementation of maxRows works when
> >> calling
> >> > >> queryForList. Does it execute a stmt.setMaxRows(maxRows); or does
> it
> >> > >> receive
> >> > >> all the rows from the database, parse then trim?
> >> > >>
> >> > >> Thanks,
> >> > >> Benjamin Baril
> >> > >> --
> >> > >> View this message in context:
> >> > >>
> >> >
> >>
> http://www.nabble.com/QueryForList-%3A-How-does-maxRows-work--tf3722314.html#a10415657
> >> > >> Sent from the iBATIS - User - Java mailing list archive at
> >> Nabble.com
> >> > .
> >> > >>
> >> > >>
> >> > >
> >> > >
> >> >
> >> > --
> >> > View this message in context:
> >>
> http://www.nabble.com/QueryForList-%3A-How-does-maxRows-work--tf3722314.html#a10417487
> >> >
> >> > Sent from the iBATIS - User - Java mailing list archive at Nabble.com
> .
> >> >
> >> >
> >>
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/QueryForList-%3A-How-does-maxRows-work--tf3722314.html#a10489862
> Sent from the iBATIS - User - Java mailing list archive at Nabble.com.
>
>

Mime
View raw message