Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 7 additions & 6 deletions documentation/docs/index/tde-limitations.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,16 +49,17 @@ Limitations of `pg_tde` {{release}}:

The `pg_upgrade` tool does not properly handle the internal encryption keys used by `pg_tde`, which prevents the upgraded cluster from decrypting encrypted relations.

## Changing the database default tablespace
## `ALTER DATABASE ... SET TABLESPACE`

!!! warning "Changing the database default tablespace is not supported with `pg_tde`"
Changing the default tablespace of a database is currently not supported when using `pg_tde`.
!!! warning "Changing a database tablespace has limited support with `pg_tde`"
The `ALTER DATABASE ... SET TABLESPACE` command bypasses PostgreSQL's storage manager (SMGR), which `pg_tde` relies on to enforce encryption.

This operation bypasses PostgreSQL's storage manager (SMGR), which is not supported by `pg_tde`.
- If encrypted objects exist in the database's default tablespace, the operation is refused.
- If no encrypted objects are present in the default tablespace, the operation is allowed.

As a safeguard, `pg_tde` blocks the operation if encrypted objects are detected in the default tablespace.
Only objects in the default tablespace are checked. Objects in other tablespaces are not evaluated by `pg_tde`.

Objects located outside the default tablespace are not affected by this command.
To move encrypted tables individually, use `ALTER TABLE ... SET TABLESPACE`.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A bit weird way to phrase it. Maybe it should be more like: "A workaround is to ...".


## Currently unsupported WAL tools

Expand Down