Thread: Re: [COMMITTERS] pgsql: Improve the manual's discussion of partitioning.
Re: [COMMITTERS] pgsql: Improve the manual's discussion of partitioning.
From
ITAGAKI Takahiro
Date:
tgl@postgresql.org (Tom Lane) wrote: > Log Message: > ----------- > Improve the manual's discussion of partitioning. Recommend using a > trigger instead of a rule to redirect insertions, use NEW.* notation > where appropriate, some other updates and adjustments. David Fetter > and Tom Lane I have a fix (1) and two comments (2 and 3) in the documentation. 1. "IF (logdate)" should be "IF (NEW.logdate)" in the trigger function. INSERT fails without "NEW." before logdate. =# INSERT INTO measurement VALUES(1, DATE '2007-12-03', 0, 0); ERROR: column "logdate" does not exist 2. What is the purpose of "2. Next we create one partition ..." ? We will recreate tables in "3. We must add non-overlappingtable constraints...". Is the chapter 2 useless? When users copy-and-paste the codes in the topic, theyrun into errors at the chapter 3. 3. Is it worth reversing the order of checking date in the trigger function? I think the newer partions are more ofteninserted in this case. If we check the newer partion first, we can skip the remaining checks. This is one of theadvantage of by-trigger partitioning than by-rule. Regards, --- ITAGAKI Takahiro NTT Open Source Software Center
ITAGAKI Takahiro <itagaki.takahiro@oss.ntt.co.jp> writes: > I have a fix (1) and two comments (2 and 3) in the documentation. > 1. "IF (logdate)" should be "IF (NEW.logdate)" in the trigger function. > INSERT fails without "NEW." before logdate. How embarrassing ... I tested the other parts of the example, but not that. > 2. What is the purpose of "2. Next we create one partition ..." ? > We will recreate tables in "3. We must add non-overlapping table > constraints...". Is the chapter 2 useless? When users copy-and-paste > the codes in the topic, they run into errors at the chapter 3. It's trying to describe things a step at a time. If we collapsed these two parts together I think it might be too complex. We could change the wording a bit, or change the step-3 stuff to ALTER TABLE ADD CONSTRAINT. > 3. Is it worth reversing the order of checking date in the trigger function? > I think the newer partions are more often inserted in this case. That might be good in a real case, but I think it would just complicate the example ... regards, tom lane