[OpenStack-Infra] [storyboard] Paging results

Heald, Mike mike.heald at hp.com
Thu Nov 20 18:01:28 UTC 2014


From: Clint Byrum [clint at fewbar.com]
> Pretty sure one could count the batches one time and assign page numbers
> to them as they're seen in a cache, rather than materializing a whole
> result set.

If you're ok with a variable page size, or the possibility of missing records as
you page, you could do that. However, when you order by something that can
change as you page, you either need to materialize it so that you don't have
records changing page, or be ok with the possibility of missing records.
There's no need to materialize every column in the result set, just the ID and data
it's been ordered by.

Example: Ordering by priority. Record X changes priority and moves from the
third page from the first. You go from the second to third, and miss it. Now
the third page does not end on the marker that the fourth page is marked
as starting at. So you either see pages 3 and 4 as different lengths, or see
a duplicated record, and still miss out on record X.

Now, that might not be a problem! But some of the goals of marker based paging were
supposed to be that you don't miss out on any records or see duplicates, yes?
As soon as you start ordering by data that can change and you don't materialize
that data, you don't meet those goals.

Cheers,
Mike

_______________________________________________
OpenStack-Infra mailing list
OpenStack-Infra at lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-infra



More information about the OpenStack-Infra mailing list