[prev in list] [next in list] [prev in thread] [next in thread] 

List:       pgsql-performance
Subject:    Re: [PERFORM] Shortcutting too-large offsets?
From:       Tom Lane <tgl () sss ! pgh ! pa ! us>
Date:       2011-09-30 18:56:42
Message-ID: 11059.1317409002 () sss ! pgh ! pa ! us
[Download RAW message or body]

Josh Berkus <josh@agliodbs.com> writes:
>> In principle, yeah, we could make it do that, but it seems like a likely
>> source of maintenance headaches.  This example is not exactly compelling
>> enough to make me want to do it.  Large OFFSETs are always going to be
>> problematic from a performance standpoint, and the fact that we could
>> short-circuit this one corner case isn't really going to make them much
>> more usable.

> It's not that uncommon of a corner case though; it's one which happens
> all the time in webapps which paginate.  People just have to ask for a
> page after the end.  It's really a question of how simple the code to
> make the optimization would be; if it would be a 5-line patch, then it's
> worth it; if it would be a 110-line refactor, no.

No, it's really a question of whether it's worth any lines at all,
and I remain unconvinced.  If someone asks for the last page, or any
page near the end, it'll take just about the same amount of time as
asking for a page past the end.  So any app like this is going to have
sucky performance, and kluging the corner case isn't going to help much.

			regards, tom lane

-- 
Sent via pgsql-performance mailing list (pgsql-performance@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic