Synopsis
The pgd assess command assesses the suitability of a Postgres server instance for migration to an EDB Postgres Distributed cluster. It runs against both standard Postgres instances and instances that already have PGD installed, adjusting which checks it reports based on the edition it detects.
The command must be run with a DSN that connects to the Postgres server instance you want to assess. Pass it with the --dsn option or set the PGD_CLI_DSN environment variable. Not providing either results in an error.
The command checks the Postgres instance for compatibility with EDB Postgres Distributed and produces a compatibility report.
Users and roles
Requires read access to pg_catalog on the target instance. On a target that already has PGD installed, also requires the bdr_read_all_stats role (or a role that inherits it, such as bdr_monitor or bdr_superuser) to detect the installed edition. See User roles.
Syntax
pgd assess [OPTIONS]
Options
The assess command has no command specific options. But it does require a DSN to connect to the Postgres server instance that you want to assess. This can be passed as the argument to the --dsn option, or by setting the PGD_CLI_DSN environment variable.
See also Global Options.
Example
pgd assess
Assessment | Result | Details -------------------------------------+----------------------------+----------------------------------------------------------- Multiple Databases | Compatible | Found only one user database Materialized Views | Compatible | No materialized views found EPAS Queue Tables | Compatible | No EPAS Queue Tables found DDL Command Usage | Requires workload analysis | Cannot be checked automatically at this time Advisory Lock Usage | Potentially compatible | No advisory lock commands found in pg_stat_statements Large Objects | Compatible | No large objects found Trigger/Reference Privileges | Compatible | No triggers with incompatible privileges found Tables with Multiple Unique Indexes | Compatible | No tables with multiple unique indexes found LOCK TABLE Usage | Potentially compatible | No LOCK TABLE usage found in pg_stat_statements LISTEN/NOTIFY Usage | Compatible | No LISTEN/NOTIFY usage found in pg_stat_statements Row-Level Lock Usage | Potentially compatible | No row-level locking commands found in pg_stat_statements