Re: [GENERAL] Getting all entries in a single block with ctid

2012-01-17 Thread Tore Halvorsen
> > > That's true, but they are more concerned with the live/deleted status of > tuples and not the logical content... Perhaps generating statements is the > key for now... > Creating a function that takes tid[] as a parameter works the way I want it to :) -- Eld på åren og sol på eng gjer manne

Re: [GENERAL] Getting all entries in a single block with ctid

2012-01-17 Thread Tore Halvorsen
On Mon, Jan 16, 2012 at 5:31 PM, Tomas Vondra wrote: > What about pgstattuple? > > http://www.postgresql.org/docs/9.1/interactive/pgstattuple.html > > Maybe it already does what you're trying to implement ... > > Look at pageinspect module too > > http://www.postgresql.org/docs/9.1/interactive/pa

Re: [GENERAL] Getting all entries in a single block with ctid

2012-01-16 Thread Tomas Vondra
On 16 Leden 2012, 17:15, Tore Halvorsen wrote: > On Mon, Jan 16, 2012 at 4:08 PM, Tomas Vondra 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 acce

Re: [GENERAL] Getting all entries in a single block with ctid

2012-01-16 Thread Tore Halvorsen
On Mon, Jan 16, 2012 at 4:08 PM, Tomas Vondra 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 sh

Re: [GENERAL] Getting all entries in a single block with ctid

2012-01-16 Thread Tomas Vondra
On 16 Leden 2012, 15:28, Tore Halvorsen wrote: > On Mon, Jan 16, 2012 at 3:20 PM, Tomas Vondra wrote: > [...] > >> >> WHERE ctid >= '(123,0)'::tid AND ctid < '(124,0)'::tid >> >> > Ah, forgot a point here - without doing a sequential scan. Hmmm, you could create an index on the ctid column, but t

Re: [GENERAL] Getting all entries in a single block with ctid

2012-01-16 Thread Tore Halvorsen
On Mon, Jan 16, 2012 at 3:20 PM, Tomas Vondra wrote: [...] > > WHERE ctid >= '(123,0)'::tid AND ctid < '(124,0)'::tid > > Ah, forgot a point here - without doing a sequential scan. -- Eld på åren og sol på eng gjer mannen fegen og fjåg. [Jøtul] 2012 Tore Halvorsen || +052 0553034554

Re: [GENERAL] Getting all entries in a single block with ctid

2012-01-16 Thread Tomas Vondra
On 16 Leden 2012, 15:07, Tore Halvorsen wrote: > Hi, > > As I understand it, the ctid contains both the block number and an index > is > this block. > Is there a way to fetch all the table entries from the same block? > > E.g. something like this: > > select * from foo where ctid like '(123,%' > >