Re: Minor TODO list changes

Lists: pgsql-hackers
From: Simon Riggs <simon(at)2ndquadrant(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Minor TODO list changes
Date: 2004-11-04 09:31:36
Message-ID: 1099560696.4320.25.camel@localhost.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

A few minor typos/notes:

INDEXES

1. On 2nd bullet...
"The main difficulty with this item is the problem of creating an index
that can spam more than one table."

should be span, not spam

2. On 6th bullet
* "Use index to restrict rows returned by multi-key index when used
with non-consecutive keys to reduce heap accesses

For an index on col1,col2,col3, and a WHERE clause of col1 = 5 and col3
= 9, spin though the index checking for col1 and col3 matches, rather
than just col1 "

This is also known as "skip-scanning", so it would be good to use that
phrase in the TODO

3. Whatever happened to the FILLFACTOR todo item? AFAICS it disappeared
sometime at the beginning of August, but I'm not sure why?

REF INTEGRITY

...Didn't we just get rid of deferred triggers?? Perhaps I read that
wrong.

CACHE

1. 1st bullet....prefix it with "Use posix_fadvise() API to let OS know
how files will be used by PostgreSQL. This would allow, for example,
a..." (replacing the word "add").

--
Best Regards, Simon Riggs


From: Simon Riggs <simon(at)2ndquadrant(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Minor TODO list changes
Date: 2004-11-04 11:51:44
Message-ID: 1099569104.4320.156.camel@localhost.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On Thu, 2004-11-04 at 09:31, Simon Riggs wrote:
> A few minor typos/notes:
>
> INDEXES
>
> 1. On 2nd bullet...
> "The main difficulty with this item is the problem of creating an index
> that can spam more than one table."
>
> should be span, not spam
>
> 2. On 6th bullet
> * "Use index to restrict rows returned by multi-key index when used
> with non-consecutive keys to reduce heap accesses
>
> For an index on col1,col2,col3, and a WHERE clause of col1 = 5 and col3
> = 9, spin though the index checking for col1 and col3 matches, rather
> than just col1 "
>
> This is also known as "skip-scanning", so it would be good to use that
> phrase in the TODO
>
> 3. Whatever happened to the FILLFACTOR todo item? AFAICS it disappeared
> sometime at the beginning of August, but I'm not sure why?

4. Multiple column index statistics

Allow accurate statistics to be collected on indexes that have more than
one column, so that they are more frequently selected for use.

(following on from Manfred Koizar's exploratory patch to provide
this...)

>
> REF INTEGRITY
>
> ...Didn't we just get rid of deferred triggers?? Perhaps I read that
> wrong.
>
>
> CACHE
>
> 1. 1st bullet....prefix it with "Use posix_fadvise() API to let OS know
> how files will be used by PostgreSQL. This would allow, for example,
> a..." (replacing the word "add").
--
Best Regards, Simon Riggs


From: Stephan Szabo <sszabo(at)megazone(dot)bigpanda(dot)com>
To: Simon Riggs <simon(at)2ndquadrant(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Minor TODO list changes
Date: 2004-11-04 14:37:47
Message-ID: 20041104063619.B95369@megazone.bigpanda.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers


On Thu, 4 Nov 2004, Simon Riggs wrote:

> REF INTEGRITY
>
> ...Didn't we just get rid of deferred triggers?? Perhaps I read that
> wrong.

We got rid of deferred referential actions. Constraint check triggers
for referential integrity (insert/update to fk table, NO ACTION on pk
table) are still deferrable.


From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Simon Riggs <simon(at)2ndquadrant(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Minor TODO list changes
Date: 2004-11-04 16:51:15
Message-ID: 200411041651.iA4GpFR02864@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers


OK, I updated all your items. I removed fillfactor because I thought I
was the only one who thought it was valuable and as I remember it was
mostly useful for ISAM, which we don't support. Can you think of a use
for a non-100% fillfactor?

---------------------------------------------------------------------------

Simon Riggs wrote:
> A few minor typos/notes:
>
> INDEXES
>
> 1. On 2nd bullet...
> "The main difficulty with this item is the problem of creating an index
> that can spam more than one table."
>
> should be span, not spam
>
> 2. On 6th bullet
> * "Use index to restrict rows returned by multi-key index when used
> with non-consecutive keys to reduce heap accesses
>
> For an index on col1,col2,col3, and a WHERE clause of col1 = 5 and col3
> = 9, spin though the index checking for col1 and col3 matches, rather
> than just col1 "
>
> This is also known as "skip-scanning", so it would be good to use that
> phrase in the TODO
>
> 3. Whatever happened to the FILLFACTOR todo item? AFAICS it disappeared
> sometime at the beginning of August, but I'm not sure why?
>
> REF INTEGRITY
>
> ...Didn't we just get rid of deferred triggers?? Perhaps I read that
> wrong.
>
>
> CACHE
>
> 1. 1st bullet....prefix it with "Use posix_fadvise() API to let OS know
> how files will be used by PostgreSQL. This would allow, for example,
> a..." (replacing the word "add").
>
>
>
> --
> Best Regards, Simon Riggs
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 2: you can get off all lists at once with the unregister command
> (send "unregister YourEmailAddressHere" to majordomo(at)postgresql(dot)org)
>

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073


From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Simon Riggs <simon(at)2ndquadrant(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Minor TODO list changes
Date: 2004-11-04 16:53:14
Message-ID: 200411041653.iA4GrEG03201@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Simon Riggs wrote:
>
> 4. Multiple column index statistics
>
> Allow accurate statistics to be collected on indexes that have more than
> one column, so that they are more frequently selected for use.
>
> (following on from Manfred Koizar's exploratory patch to provide
> this...)

Added.

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073


From: Kenneth Marshall <ktm(at)it(dot)is(dot)rice(dot)edu>
To: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
Cc: Simon Riggs <simon(at)2ndquadrant(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Minor TODO list changes
Date: 2004-11-04 17:05:41
Message-ID: 20041104170541.GB18703@it.is.rice.edu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Bruce,

Just to chime in. I also agree that fillfactor is useful. I have
been investigating different index variants and different fill
factors can greatly influence the performance of the index. I
also think it may play a key role in minimizing the small table/
many inserts/updates performance problem.

--Ken

On Thu, Nov 04, 2004 at 11:51:15AM -0500, Bruce Momjian wrote:
>
> OK, I updated all your items. I removed fillfactor because I thought I
> was the only one who thought it was valuable and as I remember it was
> mostly useful for ISAM, which we don't support. Can you think of a use
> for a non-100% fillfactor?
>
> ---------------------------------------------------------------------------
>
> Simon Riggs wrote:
> > A few minor typos/notes:
> >
> > INDEXES
> >
> > 1. On 2nd bullet...
> > "The main difficulty with this item is the problem of creating an index
> > that can spam more than one table."
> >
> > should be span, not spam
> >
> > 2. On 6th bullet
> > * "Use index to restrict rows returned by multi-key index when used
> > with non-consecutive keys to reduce heap accesses
> >
> > For an index on col1,col2,col3, and a WHERE clause of col1 = 5 and col3
> > = 9, spin though the index checking for col1 and col3 matches, rather
> > than just col1 "
> >
> > This is also known as "skip-scanning", so it would be good to use that
> > phrase in the TODO
> >
> > 3. Whatever happened to the FILLFACTOR todo item? AFAICS it disappeared
> > sometime at the beginning of August, but I'm not sure why?
> >
> > REF INTEGRITY
> >
> > ...Didn't we just get rid of deferred triggers?? Perhaps I read that
> > wrong.
> >
> >
> > CACHE
> >
> > 1. 1st bullet....prefix it with "Use posix_fadvise() API to let OS know
> > how files will be used by PostgreSQL. This would allow, for example,
> > a..." (replacing the word "add").
> >
> >
> >
> > --
> > Best Regards, Simon Riggs
> >
> >
> > ---------------------------(end of broadcast)---------------------------
> > TIP 2: you can get off all lists at once with the unregister command
> > (send "unregister YourEmailAddressHere" to majordomo(at)postgresql(dot)org)
> >
>
> --
> Bruce Momjian | http://candle.pha.pa.us
> pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
> + If your life is a hard drive, | 13 Roberts Road
> + Christ can be your backup. | Newtown Square, Pennsylvania 19073
>
> ---------------------------(end of broadcast)---------------------------
> TIP 8: explain analyze is your friend


From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Kenneth Marshall <ktm(at)is(dot)rice(dot)edu>
Cc: Simon Riggs <simon(at)2ndquadrant(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Minor TODO list changes
Date: 2004-11-04 17:09:39
Message-ID: 200411041709.iA4H9d006048@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers


Added:

* Add fillfactor to control reserved free space during index
creation

---------------------------------------------------------------------------

Kenneth Marshall wrote:
> Bruce,
>
> Just to chime in. I also agree that fillfactor is useful. I have
> been investigating different index variants and different fill
> factors can greatly influence the performance of the index. I
> also think it may play a key role in minimizing the small table/
> many inserts/updates performance problem.
>
> --Ken
>
> On Thu, Nov 04, 2004 at 11:51:15AM -0500, Bruce Momjian wrote:
> >
> > OK, I updated all your items. I removed fillfactor because I thought I
> > was the only one who thought it was valuable and as I remember it was
> > mostly useful for ISAM, which we don't support. Can you think of a use
> > for a non-100% fillfactor?
> >
> > ---------------------------------------------------------------------------
> >
> > Simon Riggs wrote:
> > > A few minor typos/notes:
> > >
> > > INDEXES
> > >
> > > 1. On 2nd bullet...
> > > "The main difficulty with this item is the problem of creating an index
> > > that can spam more than one table."
> > >
> > > should be span, not spam
> > >
> > > 2. On 6th bullet
> > > * "Use index to restrict rows returned by multi-key index when used
> > > with non-consecutive keys to reduce heap accesses
> > >
> > > For an index on col1,col2,col3, and a WHERE clause of col1 = 5 and col3
> > > = 9, spin though the index checking for col1 and col3 matches, rather
> > > than just col1 "
> > >
> > > This is also known as "skip-scanning", so it would be good to use that
> > > phrase in the TODO
> > >
> > > 3. Whatever happened to the FILLFACTOR todo item? AFAICS it disappeared
> > > sometime at the beginning of August, but I'm not sure why?
> > >
> > > REF INTEGRITY
> > >
> > > ...Didn't we just get rid of deferred triggers?? Perhaps I read that
> > > wrong.
> > >
> > >
> > > CACHE
> > >
> > > 1. 1st bullet....prefix it with "Use posix_fadvise() API to let OS know
> > > how files will be used by PostgreSQL. This would allow, for example,
> > > a..." (replacing the word "add").
> > >
> > >
> > >
> > > --
> > > Best Regards, Simon Riggs
> > >
> > >
> > > ---------------------------(end of broadcast)---------------------------
> > > TIP 2: you can get off all lists at once with the unregister command
> > > (send "unregister YourEmailAddressHere" to majordomo(at)postgresql(dot)org)
> > >
> >
> > --
> > Bruce Momjian | http://candle.pha.pa.us
> > pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
> > + If your life is a hard drive, | 13 Roberts Road
> > + Christ can be your backup. | Newtown Square, Pennsylvania 19073
> >
> > ---------------------------(end of broadcast)---------------------------
> > TIP 8: explain analyze is your friend
>

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073


From: Simon Riggs <simon(at)2ndquadrant(dot)com>
To: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Minor TODO list changes
Date: 2004-11-04 17:14:02
Message-ID: 1099588442.4320.518.camel@localhost.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

On Thu, 2004-11-04 at 16:51, Bruce Momjian wrote:
> OK, I updated all your items.

Thanks

> I removed fillfactor because I thought I
> was the only one who thought it was valuable and as I remember it was
> mostly useful for ISAM, which we don't support. Can you think of a use
> for a non-100% fillfactor?
>

I was under the impression the factor was 67% for data loaded on the
leading-edge of an index, and 50% for other INSERTs.
(backend/access/nbtree/nbtinsert.c)

Not sure, without checking, what CREATE INDEX and COPY do, but I'm
guessing it is similar?

Other RDBMS use a higher leading-edge/standard fill factor.

There are situations where I'd want to set it at 90%, or even 100%. If I
know the update rate is likely to be zero, then I'd like my indexes to
fit in 10-30% less memory and disk, please.

Or am I missing something?

--
Best Regards, Simon Riggs


From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Simon Riggs <simon(at)2ndquadrant(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Minor TODO list changes
Date: 2004-11-04 17:18:38
Message-ID: 200411041718.iA4HIce07820@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-hackers

Simon Riggs wrote:
> On Thu, 2004-11-04 at 16:51, Bruce Momjian wrote:
> > OK, I updated all your items.
>
> Thanks
>
> > I removed fillfactor because I thought I
> > was the only one who thought it was valuable and as I remember it was
> > mostly useful for ISAM, which we don't support. Can you think of a use
> > for a non-100% fillfactor?
> >
>
> I was under the impression the factor was 67% for data loaded on the
> leading-edge of an index, and 50% for other INSERTs.
> (backend/access/nbtree/nbtinsert.c)
>
> Not sure, without checking, what CREATE INDEX and COPY do, but I'm
> guessing it is similar?
>
> Other RDBMS use a higher leading-edge/standard fill factor.
>
> There are situations where I'd want to set it at 90%, or even 100%. If I
> know the update rate is likely to be zero, then I'd like my indexes to
> fit in 10-30% less memory and disk, please.
>
> Or am I missing something?

Oh, good point. I was thinking of just the leaf pages which I think are
100% filled.

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073