1) Updated documentation for SSL support in Subscription dialog.

2) Fixed API test cases.

refs #6201
This commit is contained in:
Pradip Parkale 2021-02-22 11:02:16 +05:30 committed by Akshay Joshi
parent 8e467788a3
commit 291e645d77
16 changed files with 166 additions and 0 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 77 KiB

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 71 KiB

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 145 KiB

After

Width:  |  Height:  |  Size: 144 KiB

View File

@ -34,6 +34,53 @@ Use the *Connection* tab to define the connection string to the publisher:
* Use the *Passfile* field to specify the location of a password file (.pgpass). A .pgpass file allows a user to login without providing a password when they connect. For more information, see `Section 33.15 of the Postgres documentation <https://www.postgresql.org/docs/current/libpq-pgpass.html>`_.
* Use the *Publication* field to specify the publication name on the publishers to subscribe to. Click on the refresh button at the end to load the names of the existing publications and then select from the list. You can also write the name of the known publication in the field.
Click the *SSL* tab to continue.
.. image:: images/subscription_ssl.png
:alt: Subscription dialog ssl tab
:align: center
Use the fields in the *SSL* tab to configure SSL:
* Use the drop-down list box in the *SSL* field to select the type of SSL
connection the server should use. For more information about using SSL
encryption, see
`Section 33.18 of the Postgres documentation <https://www.postgresql.org/docs/current/libpq-ssl.html>`_.
If pgAdmin is installed in Server mode (the default mode), you can use the
platform-specific File manager dialog to upload files that support SSL
encryption to the server. To access the File manager dialog, click the
icon that is located to the right of each of the following fields.
* Use the *Client certificate* field to specify the file containing the client
SSL certificate. This file will replace the default
*~/.postgresql/postgresql.crt* if pgAdmin is installed in Desktop mode, and
*<STORAGE_DIR>/<USERNAME>/.postgresql/postgresql.crt* if pgAdmin is installed
in Web mode. This parameter is ignored if an SSL connection is not made.
* Use the *Client certificate key* field to specify the file containing the
secret key used for the client certificate. This file will replace the
default *~/.postgresql/postgresql.key* if pgAdmin is installed in Desktop
mode, and *<STORAGE_DIR>/<USERNAME>/.postgresql/postgresql.key* if pgAdmin
is installed in Web mode. This parameter is ignored if an SSL connection is
not made.
* Use the *Root certificate* field to specify the file containing the SSL
certificate authority. This file will replace the default
*~/.postgresql/root.crt*. This parameter is ignored if an SSL connection is
not made.
* Use the *Certificate revocation list* field to specify the file containing
the SSL certificate revocation list. This list will replace the default list,
found in *~/.postgresql/root.crl*. This parameter is ignored if an SSL
connection is not made.
* When *SSL compression?* is set to *True*, data sent over SSL connections will
be compressed. The default value is *False* (compression is disabled). This
parameter is ignored if an SSL connection is not made.
.. warning:: In Server mode, certificates, private keys, and the revocation list
are stored in the per-user file storage area on the server, which is owned
by the user account under which the pgAdmin server process is run. This
means that administrators of the server may be able to access those files;
appropriate caution should be taken before choosing to use this feature.
Click the *With* tab to continue.
.. image:: images/subscription_with.png

View File

@ -0,0 +1,7 @@
-- Publication: alterd_publication
-- DROP PUBLICATION alterd_publication;
CREATE PUBLICATION alterd_publication
FOR ALL TABLES
WITH (publish = 'insert, update', publish_via_partition_root = false);

View File

@ -0,0 +1,7 @@
-- Publication: alterd_publication
-- DROP PUBLICATION alterd_publication;
CREATE PUBLICATION alterd_publication
FOR ALL TABLES
WITH (publish = 'insert, update, delete', publish_via_partition_root = false);

View File

@ -0,0 +1,2 @@
ALTER PUBLICATION alterd_publication_event SET
(publish = 'insert, update', publish_via_partition_root = false);

View File

@ -0,0 +1 @@
ALTER PUBLICATION test_publication_to_alter RENAME TO alterd_publication;

View File

@ -0,0 +1,7 @@
-- Publication: test_publication_create
-- DROP PUBLICATION test_publication_create;
CREATE PUBLICATION test_publication_create
FOR ALL TABLES
WITH (publish = 'insert, update', publish_via_partition_root = false);

View File

@ -0,0 +1,3 @@
CREATE PUBLICATION test_publication_create
FOR ALL TABLES
WITH (publish = 'insert, update', publish_via_partition_root = false);

View File

@ -0,0 +1,7 @@
-- Publication: test_publication_with_update
-- DROP PUBLICATION test_publication_with_update;
CREATE PUBLICATION test_publication_with_update
FOR ALL TABLES
WITH (publish = 'update', publish_via_partition_root = false);

View File

@ -0,0 +1,3 @@
CREATE PUBLICATION test_publication_with_update
FOR ALL TABLES
WITH (publish = 'update', publish_via_partition_root = false);

View File

@ -0,0 +1,80 @@
{
"scenarios": [
{
"type": "create",
"name": "Create Table For publication",
"endpoint": "NODE-table.obj",
"sql_endpoint": "NODE-table.sql_id",
"data": {
"name": "test_publication",
"columns": [
{
"name": "emp_id",
"cltype": "integer",
"is_primary_key": true
},
{
"name": "name",
"cltype": "text"
},
{
"name": "salary",
"cltype": "bigint"
}
],
"is_partitioned": false,
"schema": "public",
"spcname": "pg_default"
},
"store_object_id": true
},
{
"type": "create",
"name": "Create Publication",
"endpoint": "NODE-publication.obj",
"sql_endpoint": "NODE-publication.sql_id",
"msql_endpoint": "NODE-publication.msql",
"data": {
"name": "test_publication_create",
"evnt_insert": true,
"evnt_update": true,
"evnt_delete": false,
"evnt_truncate": false,
"pubowner": "postgres",
"publish_via_partition_root": false,
"all_table": true,
"pubtable": ""
},
"expected_sql_file": "create_publication.sql",
"expected_msql_file": "create_publication_msql.sql"
},
{
"type": "alter",
"name": "Alter Publication name",
"endpoint": "NODE-publication.obj_id",
"sql_endpoint": "NODE-publication.sql_id",
"data": {
"name": "alterd_publication"
},
"expected_sql_file": "alter_publication.sql"
},
{
"type": "alter",
"name": "Alter Publication event",
"endpoint": "NODE-publication.obj_id",
"sql_endpoint": "NODE-publication.sql_id",
"data": {
"evnt_delete": true
},
"expected_sql_file": "alter_publication_event.sql"
},
{
"type": "delete",
"name": "Drop publication",
"endpoint": "NODE-publication.delete_id",
"data": {
"name": "alterd_publication_event"
}
}
]
}

View File

@ -10,6 +10,7 @@
"evnt_update": true,
"evnt_delete": false,
"evnt_truncate": false,
"publish_via_partition_root": false,
"pubowner": "postgres",
"all_table": true,
"pubtable": ""
@ -31,6 +32,7 @@
"evnt_update": true,
"evnt_delete": false,
"evnt_truncate": false,
"publish_via_partition_root": false,
"pubowner": "postgres",
"all_table": false,
"pubtable": "PLACE_HOLDER"