View Issue Details

IDProjectCategoryView StatusLast Update
0006642SymmetricDSImprovementpublic2024-11-13 18:31
Reporterjj Assigned To 
Prioritynormal 
Status closedResolutionduplicate 
Product Version3.15.9 
Summary0006642: Oracle raw(16) to postgres UUID doesn't seem to be available?
DescriptionHi, I'm new to symmetricds and am trying to migrate oracle to postgres.
I have tables with a mix of all datatypes, but specifically many raw(16) fields containing hexto raw encoded uuids.
I have a postgres schema where these fields should be mapped to postgres UUID types.
Out of the box symmetricds wants to map these raw columns to bytea. Is there a way to modify the default mapping for types in symmetricds?
I couldnt see any distinction in the code for binary types?
Is the only way to make this work to set initial.load.create.first=false ands then create an extension with rawtohex on the oracle side and manually create hundreds of transform entries for every column applicable? This still would only solve the data issue and I could never sync schema changes.
This seems like something that would be quite a common requirement.
Am I missing something basic?
Steps To ReproduceOracle
CREATE TABLE "USER"
   ( "ID" RAW(16) DEFAULT '00000000000000000000000000000000' NOT NULL ENABLE,
    "EMAIL" VARCHAR2(256 CHAR)
    "NAME" VARCHAR2(50 CHAR)
  )

Postgres
CREATE TABLE public.ccuser (
    id uuid NOT NULL DEFAULT '00000000-0000-0000-0000-000000000000'::uuid,
    email varchar(256) NULL,
    first_name varchar(50) NULL,
)

attempt to connect these oracle->postgres with symmetricds then reload-node

[store-001] - ManageIncomingBatchListener - Failed to load batch 000-233 org.jumpmind.db.sql.SqlException: ERROR: invalid input syntax for type uuid: "P+mgcTqcAe3gU5u1H6ynWQ=="

TagsNo tags attached.

Relationships

related to 0006166 assignedmdrouard Postgres to oracle UUID value issue 

Activities

cquamme

2024-11-13 18:22

developer   ~0002526

This could be a feature request to handle UUID types on Postgres, with the assumption that the source is also UUID or binary.

cquamme

2024-11-13 18:28

developer   ~0002527

As a workaround, you could use a load filter.

Issue History

Date Modified Username Field Change
2024-11-10 05:46 jj New Issue
2024-11-13 18:22 cquamme Note Added: 0002526
2024-11-13 18:23 cquamme Status new => acknowledged
2024-11-13 18:25 cquamme Relationship added related to 0006166
2024-11-13 18:28 cquamme Note Added: 0002527
2024-11-13 18:31 cquamme Status acknowledged => closed
2024-11-13 18:31 cquamme Resolution open => duplicate