pgd assess
==========

Synopsis
--------

The ``pgd assess`` commands are used to assess the suitability of a
Postgres server instance for migration to the EDB Postgres Distributed
cluster.

The command must be run with a DSN that connects 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. Not doing either one will result in an error.

The command will then check the Postgres server instance for
compatibility with the EDB Postgres Distributed cluster, and will
provide a report on the compatibility of the Postgres server instance.

Syntax
------

.. code:: plaintext

   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 <https://www.enterprisedb.com/docs/pgd/latest/reference/cli/command_ref/#global-options>`_  .

Example
-------

.. code:: bash

   pgd assess
   __OUTPUT__
   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

.. toctree::
  :maxdepth: 3

