Re: Getting all entries in a single block with ctid - Mailing list pgsql-general

From Tore Halvorsen
Subject Re: Getting all entries in a single block with ctid
Date
Msg-id CADGw-SdmWXyHMhDn30wR7jB1dMAMB=C4S5P6Ninb93Jja4dviA@mail.gmail.com
Whole thread Raw
In response to Re: Getting all entries in a single block with ctid  ("Tomas Vondra" <tv@fuzzy.cz>)
Responses Re: Getting all entries in a single block with ctid  ("Tomas Vondra" <tv@fuzzy.cz>)
List pgsql-general
On Mon, Jan 16, 2012 at 4:08 PM, Tomas Vondra <tv@fuzzy.cz> wrote:
The only other solution is to check all possible items on the page. There
may be up to 291 items (although it depends on block size and
architecture, see MaxHeapTuplesPerPage in access/htup.h).

Nice to know.
 
Something like this should work

 ctid = '(123,0)'::tid OR ctid = '(123,1)'::tid OR ctid = '(123,2)'::tid
OR ... OR ctid = '(123,290)'::tid

Yeah, that works, but it's kinda impractical... I'm mostly trying to figure out how fragmented a table is,
by checking how must the blocks are shared - so that the worst one can be scheduled for clustering...

 
But maybe someone will recommend a better solution.

Hopefully - thanks anyway :)

--
Eld på åren og sol på eng gjer mannen fegen og fjåg. [Jøtul]
<demo> 2012 Tore Halvorsen || +052 0553034554

pgsql-general by date:

Previous
From: Adrian Klaver
Date:
Subject: Re: time zone problem
Next
From: Evert Koks
Date:
Subject: postgres Windows distribution - openssl support