Error: Failed to Parse Wallet. Cannot Create Directory
Issue
While using the Binary Log Reader incremental sync method with TDE encryption enabled, setup tests fail in Hybrid Deployment with the following error:
Setup test failed with "com.fivetran.integrations.oracle2.Oracle2Exception: Failed to parse wallet: /oracle/admin/wallet/<database_name>/tde/cwallet.sso; message: Cannot create directory, no pre-existing directory resource nor creation method available for path: /oracle/admin/wallet/<database_name>/tde"
Environment
- Connector: Oracle
- Deployment model: Hybrid Deployment
- Incremental sync method: Binary Log Reader
- Configuration: TDE encryption enabled
Resolution
To resolve this issue:
Grant the Fivetran read access to the wallet directory through an Oracle
DIRECTORYobject:i. Create the
DIRECTORYobject:CREATE OR REPLACE DIRECTORY wallet_dir AS '/oracle/admin/wallet/<database_name>/tde';ii. Grant read access to the Fivetran user:
GRANT READ ON DIRECTORY wallet_dir TO <connector_user>;Grant the Fivetran database user the following TDE-specific permissions. In multitenant (CDB/PDB) environments, grant these at the CDB level to a CDB-level user instead.
GRANT SELECT ON SYS.V_$ENCRYPTION_WALLET TO <username>;If column-level encryption is used, also grant:
GRANT SELECT ON SYS.ENC$ TO <username>;Rerun the connection setup test.
Cause
This issue occurs when the TDE wallet path you provided while setting up your connection points to a location on the Oracle database server's file system, but the Hybrid runtime hasn't been granted Oracle DIRECTORY access to it. In Hybrid Deployment, the Oracle JDBC client operates within the Hybrid runtime, which can't access that directory through the BFILE mechanism when validating the path, resulting in the above error.
This error does not indicate that the wallet needs to be copied to the Hybrid host. It indicates that the required Oracle directory configuration and permissions are missing.