What I ran into
I tried using a synonym instead of a physical table in a Connect CDC model. It felt like a clean abstraction, especially when schemas get messy.
It did not work.
That is when I found that database table synonyms are not supported in Connect CDC.
What this actually means
CDC does not resolve synonyms at runtime.
It expects:
- Direct, physical table references
- Exact schema objects it can map and track
So if you point CDC to a synonym instead of the base table:
- Capture may fail
- Mapping may not behave correctly
- Or the table may not even be recognized properly
Why this matters more than it seems
This is not just a limitation. It affects how you design models.
In many environments, synonyms are used for:
- Abstraction between schemas
- Simplifying access across systems
- Managing cross-database references
But CDC operates closer to the database layer.
It needs to know exactly where data lives, not just how it is referenced.
What I changed in my approach
Instead of relying on synonyms, I now:
- Always use the actual base table in mappings
- Verify schema references explicitly
- Avoid indirect layers between CDC and the source
It feels less flexible at first, but it removes a lot of ambiguity.
What this avoids
Once I stopped using synonyms, issues like these disappeared:
- Missing or inconsistent capture
- Unexpected mapping errors
- Confusion during troubleshooting
Because CDC was now working with real objects, not abstractions.
Takeaway
Connect CDC is not designed to work with logical shortcuts like synonyms.
It needs a direct connection to the real table.
Once I aligned with that, model behavior became much more predictable.
Have you ever used synonyms in your setup and then had to trace issues back to actual base tables?
------------------------------
Adhitya Maya
*Precisely Software Inc.
------------------------------