Re: ALTER TABLE ... SET DATA TYPE removes statistics

2021-11-26 Thread Alvaro Herrera
On 2021-Oct-26, nikolai.berkoff wrote:

> Thank you, this reads better.
> Is there a reason in the docs there is sometimes 
> 
>   ANALYZE 
> 
> and sometimes only 
> 
>   ANALYZE
> ? I prefer the link if there is no hard rule.

I pushed this on November 5th; it is commit
df80f9da5c6541e744eeb20eaca919c7fc18, including this suggestion to
cross-ref to ANALYZE.

Thanks for reporting this

-- 
Álvaro Herrera PostgreSQL Developer  —  https://www.EnterpriseDB.com/




Re: ALTER TABLE ... SET DATA TYPE removes statistics

2021-10-26 Thread nikolai.berkoff
‐‐‐ Original Message ‐‐‐

On Tuesday, October 19th, 2021 at 16:16, Alvaro Herrera 
 wrote:

> I would put it in a separate one instead, as in the attached.

Thank you, this reads better.
Is there a reason in the docs there is sometimes 

  ANALYZE 

and sometimes only 

  ANALYZE
? I prefer the link if there is no hard rule.


Regards,

Nikolai

publickey - nikolai.berkoff@pm.me - 0xD189792D.asc
Description: application/pgp-keys


signature.asc
Description: OpenPGP digital signature


Re: ALTER TABLE ... SET DATA TYPE removes statistics

2021-10-22 Thread Euler Taveira
On Tue, Oct 19, 2021, at 12:16 PM, Alvaro Herrera wrote:
> On 2021-Oct-19, Michael Paquier wrote:
> 
> > On Mon, Oct 18, 2021 at 05:15:59PM -0300, Euler Taveira wrote:
> > > I agree that it might surprise an user and it would be good to document 
> > > it.
> > > However, it does not belong to the description. I would add it to the 
> > > Notes
> > > section at the end of the ALTER TABLE page.
> > 
> > No objections to the suggested addition and the location of the
> > addition (paragraph of SET DATA TYPE rather than "Notes"), but I think
> > that the phrasing could be better:
> > "The column's statistics are removed, hence a follow-up ANALYZE is
> > suited to update the statistics to the new column type."
> 
> Dunno, putting it in the middle of the existing paragraph looks odd to
> me.  I would put it in a separate one instead, as in the attached.
LGTM. I'm not sure if it is worth mentioning that the user needs to ANALYZE
only the removed column instead of the whole table. Anyway, it is good to have
statistics from the same snapshot.


--
Euler Taveira
EDB   https://www.enterprisedb.com/


Re: ALTER TABLE ... SET DATA TYPE removes statistics

2021-10-19 Thread Michael Paquier
On Tue, Oct 19, 2021 at 12:16:44PM -0300, Alvaro Herrera wrote:
> Dunno, putting it in the middle of the existing paragraph looks odd to
> me.  I would put it in a separate one instead, as in the attached.

Fine by me.  Thanks!
--
Michael


signature.asc
Description: PGP signature


Re: ALTER TABLE ... SET DATA TYPE removes statistics

2021-10-19 Thread Alvaro Herrera
On 2021-Oct-19, Michael Paquier wrote:

> On Mon, Oct 18, 2021 at 05:15:59PM -0300, Euler Taveira wrote:
> > I agree that it might surprise an user and it would be good to document it.
> > However, it does not belong to the description. I would add it to the Notes
> > section at the end of the ALTER TABLE page.
> 
> No objections to the suggested addition and the location of the
> addition (paragraph of SET DATA TYPE rather than "Notes"), but I think
> that the phrasing could be better:
> "The column's statistics are removed, hence a follow-up ANALYZE is
> suited to update the statistics to the new column type."

Dunno, putting it in the middle of the existing paragraph looks odd to
me.  I would put it in a separate one instead, as in the attached.

-- 
Álvaro Herrera PostgreSQL Developer  —  https://www.EnterpriseDB.com/
diff --git a/doc/src/sgml/ref/alter_table.sgml b/doc/src/sgml/ref/alter_table.sgml
index 81291577f8..86fc15c8b3 100644
--- a/doc/src/sgml/ref/alter_table.sgml
+++ b/doc/src/sgml/ref/alter_table.sgml
@@ -198,6 +198,12 @@ WITH ( MODULUS numeric_literal, REM
   clause must be provided if there is no implicit or assignment
   cast from old to new type.
  
+
+ 
+  When this form is used, the column's statistics are removed,
+  so running ANALYZE on the table afterwards
+  is recommended.
+ 
 

 


Re: ALTER TABLE ... SET DATA TYPE removes statistics

2021-10-18 Thread Michael Paquier
On Mon, Oct 18, 2021 at 05:15:59PM -0300, Euler Taveira wrote:
> I agree that it might surprise an user and it would be good to document it.
> However, it does not belong to the description. I would add it to the Notes
> section at the end of the ALTER TABLE page.

No objections to the suggested addition and the location of the
addition (paragraph of SET DATA TYPE rather than "Notes"), but I think
that the phrasing could be better:
"The column's statistics are removed, hence a follow-up ANALYZE is
suited to update the statistics to the new column type."
--
Michael


signature.asc
Description: PGP signature


Re: ALTER TABLE ... SET DATA TYPE removes statistics

2021-10-18 Thread Euler Taveira
On Fri, Oct 8, 2021, at 6:03 AM, nikolai.berkoff wrote:
> The current documentation does not mention that the column statistics are 
> removed which I can see they are in src/backend/commands/tablecmds.c
> 
> ATExecAlterColumnType
> /*
> * Drop any pg_statistic entry for the column, since it's now wrong type
> */
> RemoveStatistics(RelationGetRelid(rel), attnum);
> 
> Although this might be obvious it tripped me up.  For example renaming and 
> SET STATISTICS preserves statistics.  Patch attached.
I agree that it might surprise an user and it would be good to document it.
However, it does not belong to the description. I would add it to the Notes
section at the end of the ALTER TABLE page.


--
Euler Taveira
EDB   https://www.enterprisedb.com/