A caveat of partitioning tables in the document

Started by Kasahara Tatsuhitoover 13 years ago4 messages
#1Kasahara Tatsuhito
kasahara.tatsuhito@gmail.com

Hi.

The latest document (doc/src/sgml/ddl.sgml) says
=======================================
2974 <itemizedlist>
2975 <listitem>
2976 <para>
2977 Constraint exclusion only works when the query's <literal>WHERE</>
2978 clause contains constants. A parameterized query will not be
2979 optimized, since the planner cannot know which partitions the
2980 parameter value might select at run time. For the same reason,
2981 <quote>stable</> functions such as <function>CURRENT_DATE</function>
2982 must be avoided.
2983 </para>
2984 </listitem
=======================================
but in my understanding, this problem will be solved on 9.2 (with
parameterized plans).

Or some issues still remain ?

Best regards,

--
Tatsuhito Kasahara
kasahara.tatsuhito _at_ gmail.com

#2Fujii Masao
masao.fujii@gmail.com
In reply to: Kasahara Tatsuhito (#1)
Re: A caveat of partitioning tables in the document

On Wed, Aug 22, 2012 at 12:59 AM, Kasahara Tatsuhito
<kasahara.tatsuhito@gmail.com> wrote:

Hi.

The latest document (doc/src/sgml/ddl.sgml) says
=======================================
2974 <itemizedlist>
2975 <listitem>
2976 <para>
2977 Constraint exclusion only works when the query's <literal>WHERE</>
2978 clause contains constants. A parameterized query will not be
2979 optimized, since the planner cannot know which partitions the
2980 parameter value might select at run time. For the same reason,
2981 <quote>stable</> functions such as <function>CURRENT_DATE</function>
2982 must be avoided.
2983 </para>
2984 </listitem
=======================================
but in my understanding, this problem will be solved on 9.2 (with
parameterized plans).

Or some issues still remain ?

At least this limitation "A parameterized query will not be optimized,
since the planner cannot know which partitions the parameter value
might select at run time." has been solved unless I'm missing something.
So we should just get rid of that sentence from the document.

Regards,

--
Fujii Masao

#3Tom Lane
tgl@sss.pgh.pa.us
In reply to: Fujii Masao (#2)
Re: A caveat of partitioning tables in the document

Fujii Masao <masao.fujii@gmail.com> writes:

On Wed, Aug 22, 2012 at 12:59 AM, Kasahara Tatsuhito
<kasahara.tatsuhito@gmail.com> wrote:

The latest document (doc/src/sgml/ddl.sgml) says
=======================================
2974 <itemizedlist>
2975 <listitem>
2976 <para>
2977 Constraint exclusion only works when the query's <literal>WHERE</>
2978 clause contains constants. A parameterized query will not be
2979 optimized, since the planner cannot know which partitions the
2980 parameter value might select at run time. For the same reason,
2981 <quote>stable</> functions such as <function>CURRENT_DATE</function>
2982 must be avoided.
2983 </para>
2984 </listitem
=======================================
but in my understanding, this problem will be solved on 9.2 (with
parameterized plans).

Or some issues still remain ?

At least this limitation "A parameterized query will not be optimized,
since the planner cannot know which partitions the parameter value
might select at run time." has been solved unless I'm missing something.
So we should just get rid of that sentence from the document.

Yes, I think we can take that out now. The issue with stable functions
still remains though.

regards, tom lane

#4Kasahara Tatsuhito
kasahara.tatsuhito@gmail.com
In reply to: Tom Lane (#3)
Re: A caveat of partitioning tables in the document

2012/8/23 Tom Lane <tgl@sss.pgh.pa.us>:

Fujii Masao <masao.fujii@gmail.com> writes:

On Wed, Aug 22, 2012 at 12:59 AM, Kasahara Tatsuhito
<kasahara.tatsuhito@gmail.com> wrote:

The latest document (doc/src/sgml/ddl.sgml) says
=======================================
2974 <itemizedlist>
2975 <listitem>
2976 <para>
2977 Constraint exclusion only works when the query's <literal>WHERE</>
2978 clause contains constants. A parameterized query will not be
2979 optimized, since the planner cannot know which partitions the
2980 parameter value might select at run time. For the same reason,
2981 <quote>stable</> functions such as <function>CURRENT_DATE</function>
2982 must be avoided.
2983 </para>
2984 </listitem
=======================================
but in my understanding, this problem will be solved on 9.2 (with
parameterized plans).

Or some issues still remain ?

At least this limitation "A parameterized query will not be optimized,
since the planner cannot know which partitions the parameter value
might select at run time." has been solved unless I'm missing something.
So we should just get rid of that sentence from the document.

Yes, I think we can take that out now. The issue with stable functions
still remains though.

Thanks for your replay.

I see we can remove the topic from the doc except a issue with stable functions.

Best regards,

--
Tatsuhito Kasahara
kasahara.tatsuhito _at_ gmail.com