]> granicus.if.org Git - postgresql/commitdiff
Cleanup for CLUSTERDB failure:
authorBruce Momjian <bruce@momjian.us>
Mon, 21 Oct 2002 20:32:33 +0000 (20:32 +0000)
committerBruce Momjian <bruce@momjian.us>
Mon, 21 Oct 2002 20:32:33 +0000 (20:32 +0000)
On Sat, Oct 19, 2002 at 12:11:32AM +0200, Peter Eisentraut wrote:
> $ ./clusterdb
> psql: could not connect to server: No such file or directory
>         Is the server running locally and accepting
>         connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
> psql: could not connect to server: No such file or directory
>         Is the server running locally and accepting
>         connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
> clusterdb: While clustering peter, the following failed:
> $
>
> This could probably handled a little more gracefully.

Yes, sorry.  A patch for this is attached.  Please apply.

Alvaro Herrera

src/bin/scripts/clusterdb

index bc66c3197657d65e76683fa645d52d014155d820..ca6510b190611cb53b1398d2991601862999765c 100644 (file)
@@ -11,7 +11,7 @@
 #
 #
 # IDENTIFICATION
-#    $Header: /cvsroot/pgsql/src/bin/scripts/Attic/clusterdb,v 1.7 2002/10/18 22:05:36 petere Exp $
+#    $Header: /cvsroot/pgsql/src/bin/scripts/Attic/clusterdb,v 1.8 2002/10/21 20:32:33 momjian Exp $
 #
 #-------------------------------------------------------------------------
 
@@ -141,6 +141,7 @@ if [ "$alldb" ]; then
                exit 1
        fi
        dbname=`${PATHNAME}psql $PSQLOPT -q -t -A -d template1 -c 'SELECT datname FROM pg_database WHERE datallowconn'`
+       [ "$?" -ne 0 ] && exit 1
 
 elif [ -z "$dbname" ]; then
        if [ "$PGDATABASE" ]; then
@@ -159,6 +160,7 @@ do
        query="SELECT nspname, pg_class.relname, pg_class_2.relname FROM pg_class, pg_class AS pg_class_2 JOIN pg_namespace ON (pg_namespace.oid=relnamespace), pg_index WHERE pg_class.oid=pg_index.indrelid AND pg_class_2.oid=pg_index.indexrelid AND pg_index.indisclustered AND pg_class.relowner=(SELECT usesysid FROM pg_user WHERE usename=current_user)"
        if [ -z "$table" ]; then
                tables=`${PATHNAME}psql $db $PSQLOPT -F: -P format=unaligned -t -c "$query"`
+               [ "$?" -ne 0 ] && exit 1
        else
                # if tablename has a dot, use it as namespace separator
                if echo $table | grep -s '\.' 2>&1 >/dev/null