From 6cfa6cb95eb65badf5c02d9b7214ae0a2301a68f Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Sat, 10 Jan 1998 05:19:22 +0000 Subject: [PATCH] Fix CLUSTER. --- src/backend/commands/cluster.c | 5 ++++- src/man/cluster.l | 6 +++++- src/tools/RELEASE_CHANGES | 1 + 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/backend/commands/cluster.c b/src/backend/commands/cluster.c index b77b1780f3..9b2df76761 100644 --- a/src/backend/commands/cluster.c +++ b/src/backend/commands/cluster.c @@ -14,7 +14,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/commands/cluster.c,v 1.21 1998/01/05 16:38:42 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/commands/cluster.c,v 1.22 1998/01/10 05:19:03 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -177,6 +177,9 @@ cluster(char oldrelname[], char oldindexname[]) /* Destroy old heap (along with its index) and rename new. */ heap_destroy_with_catalog(oldrelname); + CommitTransactionCommand(); + StartTransactionCommand(); + renamerel(NewHeapName, saveoldrelname); TypeRename(NewHeapName, saveoldrelname); diff --git a/src/man/cluster.l b/src/man/cluster.l index 86d50d832c..e53901382d 100644 --- a/src/man/cluster.l +++ b/src/man/cluster.l @@ -1,6 +1,6 @@ .\" This is -*-nroff-*- .\" XXX standard disclaimer belongs here.... -.\" $Header: /cvsroot/pgsql/src/man/Attic/cluster.l,v 1.2 1996/12/11 00:27:07 momjian Exp $ +.\" $Header: /cvsroot/pgsql/src/man/Attic/cluster.l,v 1.3 1998/01/10 05:19:14 momjian Exp $ .TH CLUSTER SQL 01/23/93 PostgreSQL PostgreSQL .SH NAME cluster \(em give storage clustering advice to Postgres @@ -21,6 +21,10 @@ information. The clustering is static. In other words, if the class is updated, it may become unclustered. No attempt is made to keep new instances or updated tuples clustered. If desired, the user can recluster manually by issuing the command again. +.PP +The table is actually copied to temporary table in index order, +then renamed back to the original name. For this reason, all +grant permissions and other indexes are lost when cluster is performed. .SH EXAMPLE .nf /* diff --git a/src/tools/RELEASE_CHANGES b/src/tools/RELEASE_CHANGES index 5977cfdf6d..b6d87221bc 100644 --- a/src/tools/RELEASE_CHANGES +++ b/src/tools/RELEASE_CHANGES @@ -8,3 +8,4 @@ doc/TODO doc/bug.template make new /mirgration file update include/version.h after release +update backend/parser/scan.l for non-flex sites -- 2.40.0