Re: REPACK and naming

2025-09-24 Thread Andrew Dunstan
On 2025-09-18 Th 6:53 PM, Álvaro Herrera wrote: I highly doubt that anybody is going to be confused in the slightest about what the REPACK command does, or that they would start to think about when did they PACK anything before. That sort of argument seems entirely artificial, and that is not h

Re: REPACK and naming

2025-09-20 Thread Bruce Momjian
On Wed, Sep 17, 2025 at 01:42:29AM +0200, Álvaro Herrera wrote: > Hi, > > On 2025-Sep-16, Bruce Momjian wrote: > > > I am starting to get worried about the confusing of adding a REPACK > > command. We already have a lot of confusion around vacuum and analyze: > > > > * autoanalyze does vacuum

Re: REPACK and naming

2025-09-19 Thread Álvaro Herrera
On 2025-Sep-19, David Rowley wrote: > On Fri, 19 Sept 2025 at 21:36, Álvaro Herrera wrote: > > > > So, there's already an implementation of an index-organized table in > > OrioleDB, as I understand, so maybe we can ask Alexander K. about this. > > I suspect it's fine to say that if you have a tab

Re: REPACK and naming

2025-09-19 Thread Álvaro Herrera
On 2025-Sep-19, Antonin Houska wrote: > Admittedly I haven't thought about clause like ORDER BY yet, but I wonder if > it'd really be useful. My understanding is that the purpose of clustering is > to make index scan more efficient: Not necessarily. For some queries in some workloads, having tup

Re: REPACK and naming

2025-09-19 Thread Antonin Houska
David Rowley wrote: > On Fri, 19 Sept 2025 at 23:58, Antonin Houska wrote: > > Admittedly I haven't thought about clause like ORDER BY yet, but I wonder if > > it'd really be useful. My understanding is that the purpose of clustering is > > to make index scan more efficient: with a clustered tab

Re: REPACK and naming

2025-09-19 Thread David Rowley
On Fri, 19 Sept 2025 at 23:58, Antonin Houska wrote: > Admittedly I haven't thought about clause like ORDER BY yet, but I wonder if > it'd really be useful. My understanding is that the purpose of clustering is > to make index scan more efficient: with a clustered table, the heap tuples > pertaini

Re: REPACK and naming

2025-09-19 Thread Antonin Houska
Álvaro Herrera wrote: > On 2025-Sep-19, David Rowley wrote: > > > I was just thinking about how much of a heap-ism cluster using an > > index is. If we were to ever have an index organised table AM, what > > would it mean to REPACK tab USING INDEX idx? Would that "secondary" > > index then go aw

Re: REPACK and naming

2025-09-19 Thread David Rowley
On Fri, 19 Sept 2025 at 21:36, Álvaro Herrera wrote: > > On 2025-Sep-19, David Rowley wrote: > > > I was just thinking about how much of a heap-ism cluster using an > > index is. If we were to ever have an index organised table AM, what > > would it mean to REPACK tab USING INDEX idx? Would that "

Re: REPACK and naming

2025-09-19 Thread Álvaro Herrera
On 2025-Sep-17, David G. Johnston wrote: > That changes logical aspects of a table and so would be done as part of > alter table, IMO. “AT tbl Rearrange columns (names list) “ Yes. > Concretely, maybe we should remove vacuum full from the vacuum command > page, and just call it out as compatibil

Re: REPACK and naming

2025-09-19 Thread Álvaro Herrera
On 2025-Sep-19, David Rowley wrote: > I was just thinking about how much of a heap-ism cluster using an > index is. If we were to ever have an index organised table AM, what > would it mean to REPACK tab USING INDEX idx? Would that "secondary" > index then go away and the table would become that i

Re: REPACK and naming

2025-09-19 Thread Marcos Pegoraro
Em qua., 17 de set. de 2025 às 10:17, David G. Johnston < [email protected]> escreveu: > That changes logical aspects of a table and so would be done as part of > alter table, IMO. “AT tbl Rearrange columns (names list) “ > If this command recreates entirely that table, it is not only a

Re: REPACK and naming

2025-09-18 Thread David Rowley
On Thu, 18 Sept 2025 at 03:03, Álvaro Herrera wrote: > So there two operations here. One is > REPACK tab USING INDEX idx > which we currently call CLUSTER, and there is also > REPACK TAB > (no index specified) which we currently call VACUUM FULL. I was just thinking about how much of a heap-ism

Re: REPACK and naming

2025-09-18 Thread David G. Johnston
On Thu, Sep 18, 2025 at 3:55 PM Álvaro Herrera wrote: > On 2025-Sep-17, David G. Johnston wrote: > > > On Wednesday, September 17, 2025, David Rowley > wrote: > > > > > On Thu, 18 Sept 2025 at 01:09, Robert Haas > wrote: > > > > RETABLE just isn't a word. The code sometimes calls this a REWRITE

Re: REPACK and naming

2025-09-18 Thread Álvaro Herrera
On 2025-Sep-17, David G. Johnston wrote: > On Wednesday, September 17, 2025, David Rowley wrote: > > > On Thu, 18 Sept 2025 at 01:09, Robert Haas wrote: > > > RETABLE just isn't a word. The code sometimes calls this a REWRITE of > > > a table, which would be reasonable. > > > > +1. I was readin

Re: REPACK and naming

2025-09-18 Thread Álvaro Herrera
On 2025-Sep-18, Bruce Momjian wrote: > Uh, if VACUUM FULL and CLUSTER functionality are going to eventually > point to REPACK, REPACK is the wrong name. I obviously don't agree. > While I can see REPACK having a similar function to VACUUM FULL, the > ordering idea of CLUSTER just doesn't fit int

Re: REPACK and naming

2025-09-18 Thread Vik Fearing
On 18/09/2025 16:56, Bruce Momjian wrote: On Wed, Sep 17, 2025 at 05:05:38PM -0400, Bruce Momjian wrote: On Wed, Sep 17, 2025 at 10:59:55AM -0400, Robert Haas wrote: I mean, it's PRETTY confusing that VACUUM FULL does something much more similar to CLUSTER than it is to VACUUM. We can't ever

Re: REPACK and naming

2025-09-18 Thread Bruce Momjian
On Wed, Sep 17, 2025 at 05:05:38PM -0400, Bruce Momjian wrote: > On Wed, Sep 17, 2025 at 10:59:55AM -0400, Robert Haas wrote: > > I mean, it's PRETTY confusing that VACUUM FULL does something much > > more similar to CLUSTER than it is to VACUUM. We can't ever get out > > from under that confusion

Re: REPACK and naming

2025-09-17 Thread Bruce Momjian
On Wed, Sep 17, 2025 at 10:59:55AM -0400, Robert Haas wrote: > On Wed, Sep 17, 2025 at 10:22 AM Tom Lane wrote: > > By and large, I don't think I like this renaming proposal. > > Maybe eventually it would reduce confusion, but there will be > > a long interval where it adds more. > > I mean, it's

REPACK and naming

2025-09-17 Thread David G. Johnston
On Wednesday, September 17, 2025, David Rowley wrote: > On Thu, 18 Sept 2025 at 01:09, Robert Haas wrote: > > RETABLE just isn't a word. The code sometimes calls this a REWRITE of > > a table, which would be reasonable. > > +1. I was reading this yesterday wondering why "REWRITE" didn't get a >

Re: REPACK and naming

2025-09-17 Thread David Rowley
On Thu, 18 Sept 2025 at 01:09, Robert Haas wrote: > RETABLE just isn't a word. The code sometimes calls this a REWRITE of > a table, which would be reasonable. +1. I was reading this yesterday wondering why "REWRITE" didn't get a mention. The problem I have with REPACK is that "re" indicates tha

Re: REPACK and naming

2025-09-17 Thread Álvaro Herrera
On 2025-Sep-17, Bruce Momjian wrote: > So the CLUSTER command is removed and people should use REPACK instead? > And VACUUM FULL stays unchanged? No, not removed. It's going to stay, to avoid breaking scripts. People should use REPACK on new code going forward, but existing code is not going t

Re: REPACK and naming

2025-09-17 Thread Tom Lane
=?utf-8?Q?=C3=81lvaro?= Herrera writes: > On 2025-Sep-17, David G. Johnston wrote: >> Concretely, maybe we should remove vacuum full from the vacuum command >> page, and just call it out as compatibility spelling of repack on its >> page. Maybe do the same for cluster (I haven’t dived into the ne

Re: REPACK and naming

2025-09-17 Thread Marcos Pegoraro
Em ter., 16 de set. de 2025 às 23:01, Robert Haas escreveu: > I think RETABLE is not a proposal to be taken seriously. That's > extremely confusing. > This feature could be used in a future version to rearrange fields in a table, for better padding. I don't think we have another one available fo

Re: REPACK and naming

2025-09-17 Thread Robert Haas
On Wed, Sep 17, 2025 at 8:04 AM Marcos Pegoraro wrote: > Em ter., 16 de set. de 2025 às 23:01, Robert Haas > escreveu: >> I think RETABLE is not a proposal to be taken seriously. That's >> extremely confusing. > > This feature could be used in a future version to rearrange fields in a > table,

Re: REPACK and naming

2025-09-17 Thread Robert Haas
On Wed, Sep 17, 2025 at 10:22 AM Tom Lane wrote: > By and large, I don't think I like this renaming proposal. > Maybe eventually it would reduce confusion, but there will be > a long interval where it adds more. I mean, it's PRETTY confusing that VACUUM FULL does something much more similar to CL

Re: REPACK and naming

2025-09-17 Thread Thom Brown
On Wed, 17 Sept 2025, 03:01 Robert Haas, wrote: > On Tue, Sep 16, 2025 at 7:42 PM Álvaro Herrera > wrote: > > Peter E suggested that since we have REINDEX to rewrite indexes, then > > the command to rewrite tables should be RETABLE. I haven't been able to > > get myself to like that idea, and a

Re: REPACK and naming

2025-09-17 Thread Álvaro Herrera
On 2025-Sep-17, Tom Lane wrote: > I'm not at all in love with documenting VACUUM FULL and CLUSTER as > being fundamentally the same thing. I think that is an implementation > happenstance that could go away as easily as it appeared. Even if you > think we'll never again rewrite it for heap, what

Re: REPACK and naming

2025-09-17 Thread Mihail Nikalayeu
Ranier Vilela : > SqlServer has similar feature. > SHRINK MySQL/MariaDB OPTIMIZE TABLE table_name SQL Server ALTER TABLE table_name REBUILD DBCC SHRINKFILE DBCC SHRINKDATABASE Oracle ALTER TABLE table_name SHRINK SPACE SQLite VACUUM IBM DB2 REORG TABLE table_name Sybase ASE REORG REBUILD tabl

Re: REPACK and naming

2025-09-17 Thread David G. Johnston
On Wednesday, September 17, 2025, Álvaro Herrera wrote: > On 2025-Sep-17, David G. Johnston wrote: > > > Concretely, maybe we should remove vacuum full from the vacuum command > > page, and just call it out as compatibility spelling of repack on its > > page. Maybe do the same for cluster (I hav

Re: REPACK and naming

2025-09-17 Thread Junwang Zhao
On Wed, Sep 17, 2025 at 9:01 PM Ranier Vilela wrote: > > > > Em ter., 16 de set. de 2025 às 13:40, Bruce Momjian > escreveu: >> >> I am starting to get worried about the confusing of adding a REPACK >> command. We already have a lot of confusion around vacuum and analyze: >> >> * autoanalyze d

REPACK and naming

2025-09-17 Thread David G. Johnston
On Wednesday, September 17, 2025, Marcos Pegoraro wrote: > Em ter., 16 de set. de 2025 às 23:01, Robert Haas > escreveu: > >> I think RETABLE is not a proposal to be taken seriously. That's >> extremely confusing. >> > > This feature could be used in a future version to rearrange fields in a > t

Re: REPACK and naming

2025-09-17 Thread Ranier Vilela
Em ter., 16 de set. de 2025 às 13:40, Bruce Momjian escreveu: > I am starting to get worried about the confusing of adding a REPACK > command. We already have a lot of confusion around vacuum and analyze: > > * autoanalyze does vacuum and analyze > * VACUUM FULL is much different from VACUUM >

Re: REPACK and naming

2025-09-16 Thread Robert Haas
On Tue, Sep 16, 2025 at 7:42 PM Álvaro Herrera wrote: > Peter E suggested that since we have REINDEX to rewrite indexes, then > the command to rewrite tables should be RETABLE. I haven't been able to > get myself to like that idea, and also I think that was a bit > tongue-in-cheek, but if you lik

Re: REPACK and naming

2025-09-16 Thread Álvaro Herrera
Hi, On 2025-Sep-16, Bruce Momjian wrote: > I am starting to get worried about the confusing of adding a REPACK > command. We already have a lot of confusion around vacuum and analyze: > > * autoanalyze does vacuum and analyze > * VACUUM FULL is much different from VACUUM > > It seems if we a

REPACK and naming

2025-09-16 Thread Bruce Momjian
I am starting to get worried about the confusing of adding a REPACK command. We already have a lot of confusion around vacuum and analyze: * autoanalyze does vacuum and analyze * VACUUM FULL is much different from VACUUM It seems if we add REPACK as a command, it is somewhere between VACUUM FU