pg.ddx.io  pgsql-performance@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Josh Berkus <josh@agliodbs.com>
Cc: postgres performance list <pgsql-performance@postgresql.org>
Subject: Re: Shortcutting too-large offsets?
Date: Fri, 30 Sep 2011 14:56:42 -0400
Message-ID: <11059.1317409002@sss.pgh.pa.us> (raw)
In-Reply-To: <4E860E09.7090107@agliodbs.com>
References: <4E850FC0.509@agliodbs.com>
	<6843.1317393410@sss.pgh.pa.us>
	<4E860E09.7090107@agliodbs.com>

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



view thread (6+ messages)  latest in thread

Message-ID: <11059.1317409002@sss.pgh.pa.us>
Permalink:  ../11059.1317409002@sss.pgh.pa.us/
Also on:    postgresql.org/message-id/11059.1317409002@sss.pgh.pa.us

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-performance@postgresql.org
  Cc: tgl@sss.pgh.pa.us, josh@agliodbs.com
  Subject: Re: Shortcutting too-large offsets?
  In-Reply-To: <11059.1317409002@sss.pgh.pa.us>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox