Skip to content

Commit 08871e2

Browse files
nidhibhammargvasquezvargas
authored andcommitted
DMS - Update limitations and preparing oracle source database page
Updated limitations page as per the changes in the PR: #6952
1 parent 446e7a9 commit 08871e2

File tree

1 file changed

+32
-3
lines changed
  • advocacy_docs/edb-postgres-ai/hybrid-manager/using_hybrid_manager/migration

1 file changed

+32
-3
lines changed

advocacy_docs/edb-postgres-ai/hybrid-manager/using_hybrid_manager/migration/limitations.mdx

Lines changed: 32 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ These are the known issues, limitations, and notes for:
2626

2727
A limited number of Oracle data types and features aren't supported by EDB Data Migration Service (EDB DMS).
2828

29-
See the [Debezium documentation](https://debezium.io/documentation/reference/2.2/connectors/oracle.html#oracle-data-type-mappings) for detailed comments on supported data types.
29+
See the [Debezium documentation](https://debezium.io/documentation/reference/2.2/connectors/oracle.html#oracle-data-type-mappings) for detailed comments on supported data types.
3030

3131
Unsupported Oracle data types include:
3232

@@ -44,6 +44,8 @@ EDB DMS supports replicating Oracle tables that contain BLOB, CLOB, or NCLOB col
4444

4545
`BINARY_FLOAT` and `BINARY_DOUBLE` types in Oracle that might contain `Nan`, `+INF`, and `-INF` values are not supported by EDB DMS.
4646

47+
For text field types like `VARCHAR` and `CLOB` in Oracle, values containing null character(0x00) are not supported by EDB DMS.
48+
4749
### Oracle 21c databases
4850

4951
The Data Migration Service Reader and Writer support migrating Oracle 21c databases. However, Migration Portal doesn't. This means that to migrate 21c databases, you must manually perform the schema migration.
@@ -64,11 +66,38 @@ The EDB DMS doesn't support migrating tables with columns that have user-defined
6466
- XML
6567
- POINT
6668
- LTREE
69+
- TSVECTOR
70+
71+
### TSVECTOR type migration workaround
72+
73+
This workaround can be used to handle `TSVECTOR` columns during a migration, using the following `messages` table as an example:
74+
75+
```sql
76+
CREATE TABLE messages (
77+
title text,
78+
body text,
79+
tsv tsvector
80+
);
81+
```
82+
83+
The first option is to create a trigger that automatically updates the `tsvector` field. This trigger should be created on the target table before migration and configured to fire before INSERT or UPDATE statements.
84+
85+
```sql
86+
CREATE TRIGGER tsvectorupdate BEFORE INSERT OR UPDATE
87+
ON messages FOR EACH ROW EXECUTE FUNCTION
88+
tsvector_update_trigger(tsv, 'pg_catalog.english', title, body);
89+
```
90+
91+
Since this trigger will not compute the `tsvector` field for existing rows, you can run the following UPDATE statement after the migration is complete to populate the column for all migrated data:
92+
93+
```sql
94+
UPDATE messages SET tsv = to_tsvector('english', CONCAT(title, ' ', body)) WHERE tsv IS NULL;
95+
```
6796

6897
### Incorrect failure messages
6998

70-
The `postgresConfigValidation.sh` script referenced in [Preparing Postgres database sources](/edb-postgres-ai/hybrid-manager/using_hybrid_manager/migration/migration_guides/self_managed_pg_to_hm_managed/preparing_source_pg_db/) incorrectly reports failures for the `max_wal_size` database parameter check and for the replication slot check.
99+
The `postgresConfigValidation.sh` script referenced in [Preparing Postgres database sources](/edb-postgres-ai/hybrid-manager/using_hybrid_manager/migration/migration_guides/self_managed_pg_to_hm_managed/preparing_source_pg_db/) incorrectly reports failures for the `max_wal_size` database parameter check and for the replication slot check.
71100

72-
The script reports a failure for the `max_wal_size` check, if the parameter is set to a value lower than 8 GB. Although this is a recommended setting for many production workloads, setting the parameter to a lower value doesn't prevent a migration from being performed.
101+
The script reports a failure for the `max_wal_size` check, if the parameter is set to a value lower than 8 GB. Although this is a recommended setting for many production workloads, setting the parameter to a lower value doesn't prevent a migration from being performed.
73102

74103
In addition, the Postgres configuration validation script also performs a check to see if a replication slot with a slot name matching the migration user/role was created. This is an outdated check that is no longer needed because the EDB DMS Reader automatically creates and manages the required replication slot. You can ignore the failure message related to the replication slot. The check will be removed in a future version of the `postgresConfigValidation.sh` script.

0 commit comments

Comments
 (0)