diff --git a/advocacy_docs/community/contributing/styleguide.mdx b/advocacy_docs/community/contributing/styleguide.mdx index 29afc9c2bde..6fe5fab021f 100644 --- a/advocacy_docs/community/contributing/styleguide.mdx +++ b/advocacy_docs/community/contributing/styleguide.mdx @@ -72,6 +72,8 @@ Included in this guide: * 11 [Lists](#lists) * 12 [Images](#images) * 13 [Dates](#dates) +* 14 [Terminology considerations](#terminology-considerations) +* 15 [Trademark symbols](#trademark-symbols) ## Language and tone @@ -594,3 +596,38 @@ When specifying dates for human readability, use the DD mmm YYYY format with a s When specifying dates as solely numbers, use [ISO8601](https://www.iso.org/iso-8601-date-and-time-format.html) format; YYYY/MM/DD. This is the internationally accepted, disambiguous format and should be used where you may expect the date to be read by automated systems. +## Terminology considerations + +### Ambiguity of the term "cluster" + +The term "cluster" can refer to different groups of resources in the technological field. +At EDB, the product documentation uses the term "cluster" to refer to several different objects/concepts. +To avoid ambiguity, always use an adjective (describing word) to clarify which of the cluster types you're referring to in the specific context. + +Here are a few examples: + +**Postgres cluster**: Also known as a [database cluster](/epas/latest/fundamentals/epas_fundamentals/terminology/#database-cluster), a Postgres cluster is a Postgres server that hosts a number of databases in a single file system location. + +**PGD cluster**: A [PGD cluster](/pgd/latest/terminology/#pgd-cluster) is a [Postgres Distributed](/pgd/latest/) system with a group of multiple redundant database systems in different locations. + +**Kubernetes cluster**: A [Kubernetes cluster](https://kubernetes.io/docs/reference/glossary/?fundamental=true#term-cluster) is a set of multiple nodes that run containerized applications. + +### Postgres distributions + +EDB products support three types of Postgres distributions: + +- PostgreSQL (open-source or community Postgres) +- EDB Postgres Advanced Server (EPAS) +- EDB Postgres Extended Server (PGE) + +Although also referred to as "Postgres flavors," the preferred terms are "Postgres" or "Postgres distributions" to refer to all three options. + +## Trademark symbols + +Use the ™ or ® symbol at least upon the first use of the `EDB Postgres® + [product]` trademark in the body text of a page. + +Examples: EDB Postgres® AI, EDB Postgres® Analytics, EDB Postgres® Machine Learning, etc. + +For other trademarks, the documentation site already includes a general disclaimer at the footer of every page called "Trademark" which links to https://www.enterprisedb.com/trademarks. +Contrary to the specifications on [Trademarks](https://www.enterprisedb.com/trademarks), don't include the symbol in page titles, +because the symbol can affect how search engines index and find pages. \ No newline at end of file diff --git a/advocacy_docs/edb-postgres-ai/console/agent/install-agent.mdx b/advocacy_docs/edb-postgres-ai/console/agent/install-agent.mdx index 1797c6fa082..a0285208005 100644 --- a/advocacy_docs/edb-postgres-ai/console/agent/install-agent.mdx +++ b/advocacy_docs/edb-postgres-ai/console/agent/install-agent.mdx @@ -14,18 +14,25 @@ Before you begin, you need to have the following: First, find your EnterpriseDB Repos 2.0 token [here](https://www.enterprisedb.com/repos-downloads). - Next, download and run a script to configure your system to access the `beacon-agent` package from the repository. Be sure to replace `` with your EDB Repos 2.0 token and replace `` with your subscription type (`standard` or `enterprise`): + Next, set environmental variables for your repos subscription token and your EDB subscription type (standard or enterprise): + + ``` + export EDB_SUBSCRIPTION_TOKEN= + export EBD_SUBSCRIPTION_TYPE= + ``` + + Then, download and run a script to configure your system to access the `beacon-agent` package from the repository. Be sure to replace `` with your EDB Repos 2.0 token and replace `` with your subscription type (`standard` or `enterprise`): For RHEL-like or SLES: ``` - curl -1sLf 'https://downloads.enterprisedb.com///setup.rpm.sh' | sudo -E bash + curl -1sSLf 'https://downloads.enterprisedb.com/$EDB_SUBSCRIPTION_TOKEN/$EDB_SUBSCRIPTION_TYPE/setup.rpm.sh' | sudo -E bash ``` For Debian or Ubuntu: ``` - curl -1sLf 'https://downloads.enterprisedb.com//>/setup.deb.sh' | sudo -E bash + curl -1sSLf 'https://downloads.enterprisedb.com/$EDB_SUBSCRIPTION_TOKEN/$EDB_SUBSCRIPTION_TYPE/setup.deb.sh' | sudo -E bash ``` 2. Install the `beacon-agent` package: @@ -62,17 +69,21 @@ Before you begin, you need to have the following: mkdir ${HOME}/.beacon ``` - Next, configure Beacon Agent by setting the access key (the one you obtained the [Creating a machine user]](create_machine_user)) and project ID, and specify the Beacon config directory for storing the configuration file created. Use the following commands: - - ``` + Next, configure Beacon Agent by setting the access key (the one you obtained the [Creating a machine user](create_machine_user)) and project ID: + + ``` export BEACON_AGENT_ACCESS_KEY= export BEACON_AGENT_PROJECT_ID= - beacon-agent setup -file="$HOME/.beacon/beacon_agent.yaml" ``` + + + Then, specify the Beacon config directory for storing the configuration file and the name of the configuration file to be created there. - These commands set up the necessary parameters for Beacon Agent and execute the setup command to generate the configuration file(`beacon_agent.yaml) in the specified directory. + ``` + beacon-agent setup -file="$HOME/.beacon/beacon_agent.yaml" + ``` - During this setup process, an authentication attempt occurs, utilizing the provided access key and project ID. This authentication is necessary for Beacon Agent to communicate with the Beacon server and register with the project successfully. + During the `beacon-agent setup` process, an authentication attempt occurs, utilizing the provided access key and project ID. This authentication is necessary for Beacon Agent to communicate with the Beacon server and register with the project successfully. If the commands execute as expected, you should see a message indicating that you have authenticated successfully to your EDB Postgres AI project. @@ -121,7 +132,7 @@ provider: - "foo" - "bar" host: - resource_id: "Johns-MBP.lan" + resource_id: "postgresql.lan" tags: [] poll_interval: 5m0s ``` diff --git a/advocacy_docs/supported-open-source/patroni/index.mdx b/advocacy_docs/supported-open-source/patroni/index.mdx index b0d5858b3aa..fdea2207126 100644 --- a/advocacy_docs/supported-open-source/patroni/index.mdx +++ b/advocacy_docs/supported-open-source/patroni/index.mdx @@ -15,6 +15,7 @@ navigation: - "#Installing" - installing_patroni - installing_etcd +- installing_with_TPA - "#Using" - cluster_management - tips diff --git a/advocacy_docs/supported-open-source/patroni/installing_patroni.mdx b/advocacy_docs/supported-open-source/patroni/installing_patroni.mdx index 8ecc07b244f..c926e03e927 100644 --- a/advocacy_docs/supported-open-source/patroni/installing_patroni.mdx +++ b/advocacy_docs/supported-open-source/patroni/installing_patroni.mdx @@ -7,28 +7,37 @@ tags: - Patroni --- -Patroni packages are provided through the PGDG `apt` and `yum` repositories. +EDB provides Patroni to customers via the `edb-patroni` package. This package provides Patroni itself and all its dependencies, so there is no need to install additional packages on the Postgres nodes. -See [Platform Compatibility](https://www.enterprisedb.com/resources/platform-compatibility#epas) for the supported OS list (only `Linux x86-64 (amd64)` currently). +As the dependencies no longer have to be installed separately, there is no need to install the python3-cdiff, python3-psutil, python3-psycopg2, python3-ydiff, python3-click, python3-click, python3-six, python3-dateutil, python3-prettytable, python3-pyyaml, python3-urllib3, python3-etcd, python3-dns or python3-certifi packages. -### Debian/Ubuntu +Packages are available for all subscribed customers with a valid EDB account under any entitlement (Community360, Standard, and Enterprise). + +!!! Note + The `edb-patroni` does not provide packages for the etcd server needed for the DCS cluster -To install Patroni, configure the [PostgreSQL](https://www.postgresql.org/download/linux/debian/) `apt` repository. Then run: +Once you have the EDB repository configured on all the nodes of the cluster, run the following commands depending on the Linux distribution you are using. + +### Debian/Ubuntu ```bash -sudo apt-get install -y patroni +sudo apt-get install -y edb-patroni ``` +!!! Note + On Debian and Ubuntu installations, if you've previously installed the Patroni package named `patroni` using the EDB repositories, `apt upgrade` will not replace this package with the `edb-patroni` package. Executing `apt install edb-patroni` will install `edb-patroni` as a replacement of `patroni`. + See [Quick start on Debian 11](debian11_quick_start/#4-patroni) for a more detailed configuration example. ### RHEL/CentOS -You can install Patroni from the [PostgreSQL](https://yum.postgresql.org/) `yum` repository. It requires Extra Packages for Enterprise Linux ([EPEL](https://fedoraproject.org/wiki/EPEL)). - -After you configured the repositories, run the following command to install Patroni and its dependencies for etcd: - ```bash -sudo dnf install -y patroni patroni-etcd +sudo dnf install -y edb-patroni ``` See [Quick start on RHEL8](rhel8_quick_start/#4-patroni) for a more detailed configuration example. + +### Installing community packages + +We also support community packages provided through PGDG repositories. Follow the [PGDG deb download instructions](https://www.postgresql.org/download/linux/debian/) to set up the `apt` repository, or the [PGDG rpm download instructions](https://yum.postgresql.org/) for the `yum` repository. Keep in mind that for PGDG rpm repositories you will need to configure Extra Packages for Enterprise Linux ([EPEL](https://fedoraproject.org/wiki/EPEL)). + diff --git a/advocacy_docs/supported-open-source/patroni/installing_with_TPA.mdx b/advocacy_docs/supported-open-source/patroni/installing_with_TPA.mdx new file mode 100644 index 00000000000..a1a67f4d5c0 --- /dev/null +++ b/advocacy_docs/supported-open-source/patroni/installing_with_TPA.mdx @@ -0,0 +1,13 @@ +--- +title: 'Deploying Patroni with TPA' +navTitle: 'Deploying with TPA' +description: 'Short description on deploying Patroni with TPA' +tags: + - Installation + - Patroni + - TPA +--- + +### Deploying a Patroni cluster with TPA + +The recommended way for deploying Patroni clusters is by doing so with TPA. We recommend going over the [TPA documentation](https://www.enterprisedb.com/docs/tpa/latest/) for further information on deploying M1 architectures with Patroni as the failover manager. diff --git a/product_docs/docs/eprs/7/installing/uninstalling.mdx b/product_docs/docs/eprs/7/installing/uninstalling.mdx index a3f0d0136c6..ff8bb63288d 100644 --- a/product_docs/docs/eprs/7/installing/uninstalling.mdx +++ b/product_docs/docs/eprs/7/installing/uninstalling.mdx @@ -21,7 +21,7 @@ Uninstalling Replication Server doesn't remove any databases used as primary nod Use the Replication Server console or the Replication Server command line interface to delete any existing single-master or multi-master replication systems before you uninstall Replication Server. Otherwise the control-schema objects created in the publication databases or primary nodes remain in those databases. You must then delete these control-schema objects manually, such as by using a SQL command line utility. -If you installed Replication Server using the Replication Server installer program invoked from Stack Builder or StackBuilder Plus, uninstall Replication Server by invoking the `uninstall-xdbreplicationserver` script. +If you installed Replication Server using the Replication Server installer program invoked from StackBuilder Plus, uninstall Replication Server by invoking the `uninstall-xdbreplicationserver` script. diff --git a/product_docs/docs/eprs/7/installing/upgrading_replication_server/upgrading_with_gui_installer.mdx b/product_docs/docs/eprs/7/installing/upgrading_replication_server/upgrading_with_gui_installer.mdx index cdba1735a7b..58483b66f62 100644 --- a/product_docs/docs/eprs/7/installing/upgrading_replication_server/upgrading_with_gui_installer.mdx +++ b/product_docs/docs/eprs/7/installing/upgrading_replication_server/upgrading_with_gui_installer.mdx @@ -23,7 +23,7 @@ You can upgrade to Replication Server 7 using the graphical installer. 1. On the Ready to Install screen, select **Next**. - The remaining screens that appear confirm completion of the installation process and allow you to exit from Stack Builder or StackBuilder Plus. + The remaining screens that appear confirm completion of the installation process and allow you to exit from StackBuilder Plus. 1. After installation completes, the publication server of the new Replication Server product is running, connected to the controller database used by Replication Server 6.2. The subscription server might be running at this point, which is an expected outcome of this process. diff --git a/product_docs/docs/eprs/7/installing/windows.mdx b/product_docs/docs/eprs/7/installing/windows.mdx index 1b13ab5ac2c..de71d49674c 100644 --- a/product_docs/docs/eprs/7/installing/windows.mdx +++ b/product_docs/docs/eprs/7/installing/windows.mdx @@ -12,7 +12,7 @@ EDB provides a graphical interactive installer for Windows. You can access it tw - Download the graphical installer from the [Downloads page](https://www.enterprisedb.com/software-downloads-postgres#replication-server) and invoke the installer directly. See [Installing directly](/eprs/latest/installing/windows/#installing-directly). -- Use Stack Builder (with PostgreSQL) or StackBuilder Plus (with EDB Postgres Advanced Server) to download the EDB installer package and invoke the graphical installer. See [Using Stack Builder or StackBuilder Plus](/eprs/latest/installing/windows/#using-stack-builder-or-stackbuilder-plus). +- Use StackBuilder Plus (with EDB Postgres Advanced Server) to download the EDB installer package and invoke the graphical installer. See [Using StackBuilder Plus](/eprs/latest/installing/windows/#using-stack-builder-or-stackbuilder-plus). ## Prerequisites @@ -27,25 +27,21 @@ EDB provides a graphical interactive installer for Windows. You can access it tw ## Installing directly -After downloading the graphical installer, to start the installation wizard, assume sufficient privileges (superuser or administrator) and double-click the installer icon. If prompted, provide a password. +Download the graphical installer from the [downloads portal](https://www.enterprisedb.com/software-downloads-postgres#replication-server). + +Then, assume sufficient privileges (superuser or administrator), and start the installation wizard by double-clicking the installer icon. +If prompted, provide a password. In some versions of Windows, to invoke the installer with administrator privileges, you need to right-click the installer icon and select **Run as Administrator** from the context menu. Proceed to [Using the graphical installer](#using-the-graphical-installer). -## Using Stack Builder or StackBuilder Plus - -If you're using PostgreSQL, you can invoke the graphical installer with Stack Builder. See [Using Stack Builder](https://www.enterprisedb.com/docs/supported-open-source/postgresql/installing/03_using_stackbuilder/). - -1. In Stack Builder, follow the prompts until you get to the module selection page. - -1. Expand the **Registration-required and trial products** node. +## Using StackBuilder Plus -1. Expand the **EnterpriseDB Tools** node and select **Replication Server**. - -1. Proceed to [Using the graphical installer](#using-the-graphical-installer). +!!! Note + This method is available to EDB Postgres Advanced Server users only. PostgreSQL users must resort to the [direct installation](#installing-directly) method. -If you're using EDB Postgres Advanced Server, you can invoke the graphical installer with StackBuilder Plus. See [Using StackBuilder Plus](/epas/latest/installing/windows/installing_advanced_server_with_the_interactive_installer/using_stackbuilder_plus/). +You can invoke the graphical installer with StackBuilder Plus. See [Using StackBuilder Plus](/epas/latest/installing/windows/installing_advanced_server_with_the_interactive_installer/using_stackbuilder_plus/). 1. In StackBuilder Plus, follow the prompts until you get to the module selection page. @@ -74,7 +70,7 @@ If you're using EDB Postgres Advanced Server, you can invoke the graphical insta - **Admin User** — The Replication Server administrator user name needed to authenticate some Replication Server actions, such as registering a publication server or subscription server running on this host. You can enter any alphanumeric string for the admin user name. The default admin user name is admin. - - **Admin Password** — Password of your choice for the Replication Server administrator. + - **Admin Password** — Password of your choice for the Replication Server administrator. The admin user and the admin password (in encrypted form) are saved to the `XDB_HOME\etc\edb-repl.conf` configuration file. Select **Next**. diff --git a/product_docs/docs/pgd/4/bdr/scaling.mdx b/product_docs/docs/pgd/4/bdr/scaling.mdx index 165e0b71152..9c4c9f32e58 100644 --- a/product_docs/docs/pgd/4/bdr/scaling.mdx +++ b/product_docs/docs/pgd/4/bdr/scaling.mdx @@ -22,10 +22,10 @@ Otherwise, later executions will alter the definition. `bdr.autopartition()` doesn't lock the actual table. It changes the definition of when and how new partition maintenance actions take place. -PGD AutoPartition leverages underlying Postgres features that allow a partition -to be attached or detached/dropped without locking the rest of the table -(Autopartion currently only supports this when used with 2nd Quadrant Postgres -11). +PGD Autopartition in PGD 4.3.5 and later leverages underlying Postgres features +that allow a partition to be attached or detached/dropped without locking the +rest of the table. Versions of PGD prior to 4.3.5 don't support this feature and +will lock the tables. An ERROR is raised if the table isn't RANGE partitioned or a multi-column partition key is used. diff --git a/product_docs/docs/pgd/5/reference/index.json b/product_docs/docs/pgd/5/reference/index.json index fdaa8f28993..0a844545bb9 100644 --- a/product_docs/docs/pgd/5/reference/index.json +++ b/product_docs/docs/pgd/5/reference/index.json @@ -169,6 +169,7 @@ "bdrbackwards_compatibility": "/pgd/latest/reference/pgd-settings#bdrbackwards_compatibility", "bdrtrack_replication_estimates": "/pgd/latest/reference/pgd-settings#bdrtrack_replication_estimates", "bdrlag_tracker_apply_rate_weight": "/pgd/latest/reference/pgd-settings#bdrlag_tracker_apply_rate_weight", + "bdrenable_auto_sync_reconcile": "/pgd/latest/reference/pgd-settings#bdrenable_auto_sync_reconcile", "list-of-node-states": "/pgd/latest/reference/nodes#list-of-node-states", "node-management-commands": "/pgd/latest/reference/nodes#node-management-commands", "bdr_init_physical": "/pgd/latest/reference/nodes#bdr_init_physical", diff --git a/product_docs/docs/pgd/5/reference/index.mdx b/product_docs/docs/pgd/5/reference/index.mdx index ed0d54fd9fe..8ee2d810193 100644 --- a/product_docs/docs/pgd/5/reference/index.mdx +++ b/product_docs/docs/pgd/5/reference/index.mdx @@ -233,6 +233,7 @@ The reference section is a definitive listing of all functions, views, and comma * [`bdr.backwards_compatibility`](pgd-settings#bdrbackwards_compatibility) * [`bdr.track_replication_estimates`](pgd-settings#bdrtrack_replication_estimates) * [`bdr.lag_tracker_apply_rate_weight`](pgd-settings#bdrlag_tracker_apply_rate_weight) + * [`bdr.enable_auto_sync_reconcile`](pgd-settings#bdrenable_auto_sync_reconcile) ## [Node management](nodes) diff --git a/product_docs/docs/pgd/5/reference/pgd-settings.mdx b/product_docs/docs/pgd/5/reference/pgd-settings.mdx index c48094790db..3b6130d1a18 100644 --- a/product_docs/docs/pgd/5/reference/pgd-settings.mdx +++ b/product_docs/docs/pgd/5/reference/pgd-settings.mdx @@ -661,3 +661,7 @@ We monitor how far behind peer nodes are in terms of applying WAL from the local node and calculate a moving average of the apply rates for the lag tracking. This parameter specifies how much contribution newer calculated values have in this moving average calculation. Default value is 0.1. + +### `bdr.enable_auto_sync_reconcile` + +Default value (from 5.5.1) is off. When enabled, nodes will perform automatic synchronization of data from a node that is furthest ahead with respect to the down node. diff --git a/product_docs/docs/pgd/5/rel_notes/index.mdx b/product_docs/docs/pgd/5/rel_notes/index.mdx index a7cb7b6ac8f..3b4d614d3e0 100644 --- a/product_docs/docs/pgd/5/rel_notes/index.mdx +++ b/product_docs/docs/pgd/5/rel_notes/index.mdx @@ -3,6 +3,7 @@ title: "EDB Postgres Distributed release notes" navTitle: "Release notes" description: "Release notes for EDB Postgres Distributed" navigation: +- pgd_5.5.1_rel_notes - pgd_5.5.0_rel_notes - pgd_5.4.1_rel_notes - pgd_5.4.0_rel_notes @@ -25,6 +26,7 @@ that introduced the feature. | Release Date | EDB Postgres Distributed | BDR extension | PGD CLI | PGD Proxy | |--------------|------------------------------|---------------|---------|-----------| +| 31 Mar 2024 | [5.5.1](pgd_5.5.1_rel_notes) | 5.5.1 | 5.5.0 | 5.5.0 | | 16 May 2024 | [5.5.0](pgd_5.5.0_rel_notes) | 5.5.0 | 5.5.0 | 5.5.0 | | 03 Apr 2024 | [5.4.1](pgd_5.4.1_rel_notes) | 5.4.1 | 5.4.0 | 5.4.0 | | 05 Mar 2024 | [5.4.0](pgd_5.4.0_rel_notes) | 5.4.0 | 5.4.0 | 5.4.0 | diff --git a/product_docs/docs/pgd/5/rel_notes/pgd_5.4.1_rel_notes.mdx b/product_docs/docs/pgd/5/rel_notes/pgd_5.4.1_rel_notes.mdx index 5b42b53e0f3..0eda5e3fdce 100644 --- a/product_docs/docs/pgd/5/rel_notes/pgd_5.4.1_rel_notes.mdx +++ b/product_docs/docs/pgd/5/rel_notes/pgd_5.4.1_rel_notes.mdx @@ -5,7 +5,7 @@ navTitle: "Version 5.4.1" Released: 03 Apr 2024 -EDB Postgres Distributed version 5.4.1 is a minor version bug-fix release of EDB Postgres Distributed. +EDB Postgres Distributed version 5.4.1 is a patch release containing bug-fixes for EDB Postgres Distributed. !!! Important Recommended upgrade We recommend that all users of PGD 5 upgrade to PGD 5.4.1. See [PGD/TPA upgrades](../upgrades/tpa_overview) for details. @@ -14,8 +14,9 @@ We recommend that all users of PGD 5 upgrade to PGD 5.4.1. See [PGD/TPA upgrades ## Bug fixes -| Component | Version | Description | Addresses | -|-----------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------| -| BDR | 5.4.1 | Fixed WAL retention logic: prevent a PGD node from running out of disk space due to a bug in 5.4.0 in combination with Postgres 16, PGE 16, and EPAS 16.

We now make sure WAL gets properly cleaned even after 4 GB of WAL produced on a node. A change in 5.4.0 caused WAL to be retained forever after that point. This issue affects only release PGD 5.4.0 in combination with Postgres 16, PGE 16, and EPAS 16. | | +| Component | Version | Description | Addresses | +|-----------|---------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------| +| BDR | 5.4.1 | Fixed WAL retention logic: prevent a PGD node from running out of disk space due to a bug in 5.4.0 in combination with Postgres 16, PGE 16, and EPAS 16.
We now make sure WAL gets properly cleaned even after 4 GB of WAL produced on a node. A change in 5.4.0 caused WAL to be retained forever after that point. This issue affects only release PGD 5.4.0 in combination with Postgres 16, PGE 16, and EPAS 16. | | + diff --git a/product_docs/docs/pgd/5/rel_notes/pgd_5.5.1_rel_notes.mdx b/product_docs/docs/pgd/5/rel_notes/pgd_5.5.1_rel_notes.mdx new file mode 100644 index 00000000000..b8940b60046 --- /dev/null +++ b/product_docs/docs/pgd/5/rel_notes/pgd_5.5.1_rel_notes.mdx @@ -0,0 +1,22 @@ +--- +title: "EDB Postgres Distributed 5.5.1 release notes" +navTitle: "Version 5.5.1" +--- + +Released: 31 Mar 2024 + +EDB Postgres Distributed version 5.5.1 is a patch release containing bug-fixes for EDB Postgres Distributed. + +!!! Important Recommended upgrade +We recommend that all users of PGD 5 upgrade to PGD 5.5.1. See [PGD/TPA upgrades](../upgrades/tpa_overview) for details. +!!! + + +## Bug fixes + +| Component | Version | Description | Ticket | +|-----------|---------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------| +| BDR | 5.5.1 |
Fix a data inconsistency issue with mixed version usage during upgradesUpgrading from any previous PGD version to PGD 5.5.0 may result in inconsistencies when replicating from the newer PGD 5.5.0 node to an older version PGD node. This release fixes mixed version operation to allow for smooth rolling upgrades.
| | +| BDR | 5.5.1 |
Disabled auto-triggering of node sync by defaultAutomatically triggered synchronization of data from a down node caused issues by failing to resume once it came back up. As a precautionary measure, the feature is now disabled by default (PGD setting [`bdr.enable_auto_sync_reconcile`](/pgd/latest/reference/pgd-settings#bdrenable_auto_sync_reconcile)).
| 11510 | + + diff --git a/product_docs/docs/pgd/5/scaling.mdx b/product_docs/docs/pgd/5/scaling.mdx index 2bd15a2815a..4c585775f0e 100644 --- a/product_docs/docs/pgd/5/scaling.mdx +++ b/product_docs/docs/pgd/5/scaling.mdx @@ -24,8 +24,9 @@ function to create or alter the definition of automatic range partitioning for a no definition exists, it's created. Otherwise, later executions will alter the definition. -PGD Autopartition in PGD 5 currently locks the actual table while performing -new partition maintenance operations. +PGD Autopartition in PGD 5.5 and later leverages underlying Postgres features that allow a +partition to be attached or detached/dropped without locking the rest of the +table. Versions of PGD prior to 5.5 don't support this feature and will lock the tables. An ERROR is raised if the table isn't RANGE partitioned or a multi-column partition key is used. diff --git a/product_docs/docs/postgres_distributed_for_kubernetes/1/identify_images/assemble_command.mdx b/product_docs/docs/postgres_distributed_for_kubernetes/1/identify_images/assemble_command.mdx index 2a976815c22..87bb7c79507 100644 --- a/product_docs/docs/postgres_distributed_for_kubernetes/1/identify_images/assemble_command.mdx +++ b/product_docs/docs/postgres_distributed_for_kubernetes/1/identify_images/assemble_command.mdx @@ -2,7 +2,7 @@ title: 'Assembling a deployment command' --- -For a quick installation with the aim of testing the product, see the [Quick start](/postgres_distributed_for_kubernetes/latest/quickstart/). +For a quick installation with the aim of testing the product, see the [Quick start](../quickstart/). For more targeted testing or production purposes, this overview describes how to assemble a command to deploy EDB Postgres Distributed for Kubernetes with the operand and proxy image versions of your choice. @@ -11,12 +11,12 @@ EDB Postgres Distributed for Kubernetes with the operand and proxy image version Gather the following information: -* [Repository name](/postgres_distributed_for_kubernetes/latest/private_registries/#which-repository-to-choose) -* [Your repository token](/postgres_distributed_for_kubernetes/latest/private_registries/#how-to-retrieve-the-token) -* [Operand image name](/postgres_distributed_for_kubernetes/latest/identify_images/identify_image_name/#operand-image-name) -* [Proxy image name](/postgres_distributed_for_kubernetes/latest/identify_images/identify_image_name/#proxy-image-name) +* [Repository name](private_registries/#which-repository-to-choose) +* [Your repository token](private_registries/#how-to-retrieve-the-token) +* [Operand image name](identify_image_name/#operand-image-name) +* [Proxy image name](identify_image_name/#proxy-image-name) -## Assemble your command +## Assembling your command Replace the placeholders in `<...>` with the gathered information: @@ -27,41 +27,96 @@ helm upgrade --dependency-update \ --create-namespace \ edb/edb-postgres-distributed-for-kubernetes \ --set edb-postgres-for-kubernetes.enabled=true \ - --set image.repository=docker.enterprisedb.com//pg4k-pgd \ - --set edb-postgres-for-kubernetes.image.repository=docker.enterprisedb.com//edb-postgres-for-kubernetes \ - --set config.data.PGD_IMAGE_NAME=docker.enterprisedb.com// \ - --set config.data.PGD_PROXY_IMAGE_NAME=docker.enterprisedb.com// - --set image.imageCredentials.username= \ - --set image.imageCredentials.password= + --set image.repository=docker.enterprisedb.com//pg4k-pgd \ + --set edb-postgres-for-kubernetes.image.repository=docker.enterprisedb.com//edb-postgres-for-kubernetes \ + --set config.data.PGD_IMAGE_NAME=docker.enterprisedb.com// \ + --set config.data.PGD_PROXY_IMAGE_NAME=docker.enterprisedb.com// + --set image.imageCredentials.username= \ + --set image.imageCredentials.password= ``` After assembling the command with the required images, -see [Installation](/postgres_distributed_for_kubernetes/latest/installation_upgrade/) for instructions on how to add the repository, +see [Installation](../installation_upgrade) for instructions on how to add the repository, deploy the images, and create a certificate issuer. -## Example +For more information about how to assemble your command, see the examples: -The example command: +### Examples -* Pulls images from the `k8s_enterprise_pgd` repository. -* Uses EBD Postgres Advanced Server 15.6.2 as the Postgres option. -* Uses PGD 5.4.1 as the Postgres Distributed version. -* Uses 5.4.0 as the PGD Proxy version. +These example commands: -!!! Note Token - Before running the command, replace the token placeholder. +* Pull images from the `k8s_enterprise_pgd` repository. +* Use EBD Postgres Advanced Server 15.6.2 as the Postgres option. +* Use PGD 5.4.1 as the Postgres Distributed version. +* Use 5.4.0 as the PGD Proxy version. -``` -helm upgrade --dependency-update \ - --install edb-pg4k-pgd \ - --namespace pgd-operator-system \ - --create-namespace \ - edb/edb-postgres-distributed-for-kubernetes \ - --set edb-postgres-for-kubernetes.enabled=true \ - --set image.repository=docker.enterprisedb.com/k8s_enterprise_pgd/pg4k-pgd \ - --set edb-postgres-for-kubernetes.image.repository=docker.enterprisedb.com/k8s_enterprise_pgd/edb-postgres-for-kubernetes \ - --set config.data.PGD_IMAGE_NAME=docker.enterprisedb.com/k8s_enterprise_pgd/edb-postgres-advanced-pgd:15.6.0-5.4.1-1 \ - --set config.data.PGD_PROXY_IMAGE_NAME=docker.enterprisedb.com/k8s_enterprise_pgd/edb-pgd-proxy:5.4.0 - --set image.imageCredentials.username=k8s_enterprise_pgd \ - --set image.imageCredentials.password= -``` +#### Example 1: Setting the environment variables before you run the deployment command + +Set the environment variables for the deployment command: + +1. Set the environment variable to pull images from the `k8s_enterprise_pgd` repository: + + ``` + export REPOSITORY_NAME=k8s_enterprise_pgd + ``` + +1. Set the environment variable to use [your personal token](private_registries/#how-to-retrieve-the-token): + + ``` + export EDB_SUBSCRIPTION_TOKEN= + ``` + +1. Set the environment variable to use EBD Postgres Advanced Server 15.6.2 as the Postgres option, + and PGD 5.4.1 as the Postgres Distributed version: + + ``` + export OPERAND_NAME=edb-postgres-advanced-pgd:15.6.2-5.4.1-1 + ``` + +1. Set the environment variable to use 5.4.0 as the PGD Proxy version: + + ``` + export PGD-PROXY=edb-pgd-proxy:5.4.0 + ``` + +1. Run the deployment command: + + ``` + helm upgrade --dependency-update \ + --install edb-pg4k-pgd \ + --namespace pgd-operator-system \ + --create-namespace \ + edb/edb-postgres-distributed-for-kubernetes \ + --set edb-postgres-for-kubernetes.enabled=true \ + --set image.repository=docker.enterprisedb.com/${REPOSITORY_NAME}/pg4k-pgd \ + --set edb-postgres-for-kubernetes.image.repository=docker.enterprisedb.com/${REPOSITORY_NAME}/edb-postgres-for-kubernetes \ + --set config.data.PGD_IMAGE_NAME=docker.enterprisedb.com/${REPOSITORY_NAME}/${OPERAND_NAME} \ + --set config.data.PGD_PROXY_IMAGE_NAME=docker.enterprisedb.com/${REPOSITORY_NAME}/${PGD-PROXY} + --set image.imageCredentials.username=${REPOSITORY_NAME} \ + --set image.imageCredentials.password=${EDB_SUBSCRIPTION_TOKEN} + ``` + +#### Example 2: Replacing the placeholders manually + +1. Set the environment variable to use [your personal token](private_registries/#how-to-retrieve-the-token): + + ``` + export EDB_SUBSCRIPTION_TOKEN= + ``` + +1. Insert the repository, image and proxy names into the command: + + ``` + helm upgrade --dependency-update \ + --install edb-pg4k-pgd \ + --namespace pgd-operator-system \ + --create-namespace \ + edb/edb-postgres-distributed-for-kubernetes \ + --set edb-postgres-for-kubernetes.enabled=true \ + --set image.repository=docker.enterprisedb.com/k8s_enterprise_pgd/pg4k-pgd \ + --set edb-postgres-for-kubernetes.image.repository=docker.enterprisedb.com/k8s_enterprise_pgd/edb-postgres-for-kubernetes \ + --set config.data.PGD_IMAGE_NAME=docker.enterprisedb.com/k8s_enterprise_pgd/edb-postgres-advanced-pgd:15.6.2-5.4.1-1 \ + --set config.data.PGD_PROXY_IMAGE_NAME=docker.enterprisedb.com/k8s_enterprise_pgd/edb-pgd-proxy:5.4.0 + --set image.imageCredentials.username=k8s_enterprise_pgd \ + --set image.imageCredentials.password=${EDB_SUBSCRIPTION_TOKEN} + ``` diff --git a/product_docs/docs/postgres_distributed_for_kubernetes/1/identify_images/identify_image_name.mdx b/product_docs/docs/postgres_distributed_for_kubernetes/1/identify_images/identify_image_name.mdx index 8042c986e51..ea314d7a152 100644 --- a/product_docs/docs/postgres_distributed_for_kubernetes/1/identify_images/identify_image_name.mdx +++ b/product_docs/docs/postgres_distributed_for_kubernetes/1/identify_images/identify_image_name.mdx @@ -2,13 +2,13 @@ title: 'Identifying image names' --- -For a quick installation with the aim of testing the product, see the [Quick start](/postgres_distributed_for_kubernetes/latest/quickstart/). +For a quick installation with the aim of testing the product, see the [Quick start](../quickstart/). For more targeted testing or production purposes, this overview describes how to select a specific operand and proxy image version that's appropriate for your Postgres distribution. ## Operand image name -See [Operand images](/postgres_distributed_for_kubernetes/latest/private_registries/#operand-images) for general information about the images. +See [Operand images](private_registries/#operand-images) for general information about the images. ### Name elements diff --git a/product_docs/docs/postgres_distributed_for_kubernetes/1/identify_images/index.mdx b/product_docs/docs/postgres_distributed_for_kubernetes/1/identify_images/index.mdx index 5c651464154..7ec92b1eadf 100644 --- a/product_docs/docs/postgres_distributed_for_kubernetes/1/identify_images/index.mdx +++ b/product_docs/docs/postgres_distributed_for_kubernetes/1/identify_images/index.mdx @@ -1,13 +1,14 @@ --- title: 'Installation images and repositories' navigation: + - private_registries - identify_image_name - assemble_command --- If you plan on deploying a specific version of Postgres Distributed or a specific Postgres distribution or version, you will need to select the appropriate images and image versions. -Before [installing EDB Postgres Distributed for Kubernetes](/postgres_distributed_for_kubernetes/latest/installation_upgrade): +Before [installing EDB Postgres Distributed for Kubernetes](../installation_upgrade): -1. Identify your repository name and retrieve your user token as explained in [EDB private image registries](../private_registries). +1. Identify your repository name and retrieve your user token as explained in [EDB private image registries](private_registries). 1. [Identify the image names for your environment](identify_image_name). 1. [Assemble your deployment command](assemble_command). diff --git a/product_docs/docs/postgres_distributed_for_kubernetes/1/private_registries.mdx b/product_docs/docs/postgres_distributed_for_kubernetes/1/identify_images/private_registries.mdx similarity index 97% rename from product_docs/docs/postgres_distributed_for_kubernetes/1/private_registries.mdx rename to product_docs/docs/postgres_distributed_for_kubernetes/1/identify_images/private_registries.mdx index 3b4c0959fda..ae06a508bff 100644 --- a/product_docs/docs/postgres_distributed_for_kubernetes/1/private_registries.mdx +++ b/product_docs/docs/postgres_distributed_for_kubernetes/1/identify_images/private_registries.mdx @@ -1,5 +1,5 @@ --- -title: 'EDB private image registries' +title: "EDB's private image registries" originalFilePath: 'src/private_registries.md' --- @@ -103,4 +103,4 @@ The table shows the image name prefix for each Postgres distribution. !!! Note Image naming For more information on operand image naming and proxy image naming, - see [Identify your image name](identify_images/identify_image_name/). + see [Identify your image name](identify_image_name/). diff --git a/product_docs/docs/postgres_distributed_for_kubernetes/1/installation_upgrade.mdx b/product_docs/docs/postgres_distributed_for_kubernetes/1/installation_upgrade.mdx index 9c3ee5255fb..645db8587d9 100644 --- a/product_docs/docs/postgres_distributed_for_kubernetes/1/installation_upgrade.mdx +++ b/product_docs/docs/postgres_distributed_for_kubernetes/1/installation_upgrade.mdx @@ -34,6 +34,22 @@ helm repo add edb \ https://enterprisedb.github.io/edb-postgres-for-kubernetes-charts/ ``` +## Set the environment variables + +Set the environment variables for the `REPOSITORY_NAME` and `REPOSITORY_NAME`: + +1. Set `REPOSITORY_NAME` to the name of the repository. In this example, the images come from the `k8s_enterprise_pgd` repository: + + ``` + export REPOSITORY_NAME=k8s_enterprise_pgd + ``` + +1. Set `EDB_SUBSCRIPTION_TOKEN` to use your personal token: + + ``` + export EDB_SUBSCRIPTION_TOKEN= + ``` + ## Deploy the images !!! Important @@ -56,17 +72,10 @@ helm upgrade --dependency-update \ --namespace pgd-operator-system \ --create-namespace \ edb/edb-postgres-distributed-for-kubernetes \ - --set image.imageCredentials.username= \ - --set image.imageCredentials.password= + --set image.imageCredentials.username=${REPOSITORY_NAME} \ + --set image.imageCredentials.password=${EDB_SUBSCRIPTION_TOKEN} ``` -In particular: - -- Set `` to the name of the repository, as explained in [Which repository to - choose?](private_registries.md#which-repository-to-choose). -- Set `` to the repository token for your EDB account, as explained in - [How to retrieve the token](private_registries.md#how-to-retrieve-the-token). - ## Create a certificate issuer Be sure to create a cert issuer before you start deploying PGD clusters.