Thread: Indexes mysteriously change to LOG

Indexes mysteriously change to LOG

From
Rumpi Gravenstein
Date:
We are on PostgreSQL 14.5 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-10), 64-bitPostgreSQL 14.5 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-10), 64-bit

We have recently discovered that on some of our partitioned tables indexes that were created as:

CREATE UNIQUE INDEX chapter_u01 USING btree (dur_uk, catalog_id)

somehow changed to include the ON ONLY option:

CREATE UNIQUE INDEX chapter_u01 ON ONLY chapter USING btree (dur_uk, catalog_id)

There is no SQL issued that explicitly requests this "ON ONLY" option.  I am wondering if this is a side-effect of some other activity.  Googling and looking through documentation haven't helped.  

Does anyone have any thoughts on how this might happen?

--
Rumpi Gravenstein

Re: Indexes mysteriously change to LOG

From
Adrian Klaver
Date:
On 1/27/23 12:23, Rumpi Gravenstein wrote:
> We are on PostgreSQL 14.5 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 
> 8.5.0 20210514 (Red Hat 8.5.0-10), 64-bitPostgreSQL 14.5 on 
> x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 
> 8.5.0-10), 64-bit
> 
> We have recently discovered that on some of our partitioned tables 
> indexes that were created as:
> 
> CREATE UNIQUE INDEX chapter_u01 USING btree (dur_uk, catalog_id)

How did you do the above without the table name?

> 
> somehow changed to include the ON ONLY option:
> 
> CREATE UNIQUE INDEX chapter_u01 *ON ONLY *chapter USING btree (dur_uk, 
> catalog_id)
> 
> There is no SQL issued that explicitly requests this "ON ONLY" option.  
> I am wondering if this is a side-effect of some other activity.  
> Googling and looking through documentation haven't helped.
> 
> Does anyone have any thoughts on how this might happen?
> 
> -- 
> Rumpi Gravenstein

-- 
Adrian Klaver
adrian.klaver@aklaver.com




Re: Indexes mysteriously change to LOG

From
Rumpi Gravenstein
Date:
> CREATE UNIQUE INDEX chapter_u01 USING btree (dur_uk, catalog_id)

How did you do the above without the table name?

That's a cut/paste error.  The original index create is:

create unique index chapter_u01 on chapter (dur_uk,catalog_id);

On Fri, Jan 27, 2023 at 3:34 PM Adrian Klaver <adrian.klaver@aklaver.com> wrote:
On 1/27/23 12:23, Rumpi Gravenstein wrote:
> We are on PostgreSQL 14.5 on x86_64-pc-linux-gnu, compiled by gcc (GCC)
> 8.5.0 20210514 (Red Hat 8.5.0-10), 64-bitPostgreSQL 14.5 on
> x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat
> 8.5.0-10), 64-bit
>
> We have recently discovered that on some of our partitioned tables
> indexes that were created as:
>
> CREATE UNIQUE INDEX chapter_u01 USING btree (dur_uk, catalog_id)

How did you do the above without the table name?

>
> somehow changed to include the ON ONLY option:
>
> CREATE UNIQUE INDEX chapter_u01 *ON ONLY *chapter USING btree (dur_uk,
> catalog_id)
>
> There is no SQL issued that explicitly requests this "ON ONLY" option. 
> I am wondering if this is a side-effect of some other activity. 
> Googling and looking through documentation haven't helped.
>
> Does anyone have any thoughts on how this might happen?
>
> --
> Rumpi Gravenstein

--
Adrian Klaver
adrian.klaver@aklaver.com



--
Rumpi Gravenstein