in the
current database that the calling user owns, or all tables if called
by a superuser. (Never-clustered tables are not included.) This
- form of CLUSTER cannot be called from inside a
- transaction or function .
+ form of CLUSTER cannot be executed inside a transaction
+ block .
If the command string contains multiple SQL commands, they are
processed in a single transaction, unless there are explicit
- BEGIN/COMMIT commands included in the string to divide it into
- multiple transactions. This is different from the behavior when
- the same string is fed to
psql 's standard input.
+ BEGIN>/COMMIT> commands included in the
+ string to divide it into multiple transactions. This is
+ different from the behavior when the same string is fed to
-f> option, adding this option wraps
BEGIN>/COMMIT> around the script to execute it
as a single transaction. This ensures that either all the commands
- complete successfully, or no changes are applied. (However, if the
- script itself uses BEGIN> or COMMIT>, this
- option will not have the desired effect!)
+ complete successfully, or no changes are applied.
+
+
+ If the script itself uses BEGIN>, COMMIT>
+ or any command that cannot be executed inside a transaction
+ block, specifying this option will cause the transaction to be
+ aborted.
Recreate all indexes within the current database.
Indexes on shared system catalogs are skipped except in stand-alone mode
- (see below).
+ (see below). This form of REINDEX cannot be executed
+ inside a transaction block.
Recreate all indexes on system catalogs within the current database.
Indexes on user tables are not processed. Also, indexes on shared
system catalogs are skipped except in stand-alone mode (see below).
+ This form of REINDEX cannot be executed inside a
+ transaction block.