
I presented at DevelopersIO 2026 Tokyo with the title "Key Points for Using the Snowflake Openflow Connector." #devio2026
Here are common pitfalls when implementing Snowflake Openflow Connector and how to address them, covering network setup, source DB preparation, and operational gotchas.
2026.10.27
This page has been translated by machine translation. View original
This is Kasahara from the Data Business Division.
I gave a presentation titled "Key Points for Using Snowflake Openflow Connector" at "DevelopersIO 2026 Tokyo" held on Saturday, October 24, 2026, so I am sharing the materials here.
Slide Materials
Overview
I have summarized the pitfalls I encountered when using Snowflake Openflow Connector and how to deal with them.
When introducing the Snowflake Openflow Connector, check the following points and proceed accordingly.
Before You Start
- Accept the terms and conditions with
ORGADMIN - Set the
DEFAULT_ROLEof the user to something other thanACCOUNTADMINto access the Runtime - Check the usage conditions and other constraints of the connector
Network Configuration
- To connect externally from SPCS, configure these three items: "Create Network Rule and EAI", "Grant EAI privileges to the Runtime role", and "Associate EAI with the Runtime"
- If using the Business Critical edition, use PrivateLink for closed network connection / otherwise, since traffic goes through a public network, use NLB and implement IP restriction measures
Preparation on the Source DB Side
- Agree in advance with the DB administrator on licenses, log settings, and users before configuring
- For PostgreSQL: configure Logical Replication settings / Publication settings
- For OracleDB: confirm availability of GoldenGate / XStream, then configure ARCHIVELOG mode / supplemental logging / STREAM_POOL_SIZE, etc.
- Tables to be synchronized also need to be specified on the source DB side
After It Is Running
- Snapshot arrives but CDC does not
- Check the archive log retention period, etc.
- If archive logs are not output, changes will not be reflected to Snowflake in the first place
- The order for adding tables to be ingested is "source DB side settings" → "Snowflake side settings"
- Getting the order wrong can cause data loss without any errors
- If synchronization has stopped even though the status shows "Running", you need to determine whether the issue is on the Oracle side or the Snowflake side
- For Oracle, check in this order: "capture (Oracle)" → "outbound (Oracle)" → "Connector (Snowflake)"
- If you still cannot figure it out, try digging deeper into the processes on the Snowflake side
- Set up monitoring and operational rules
- Basically, do not stop the Connector
- Before going into production, test and confirm the procedure to verify whether synchronization can catch up without data loss after stopping and restarting
Cleanup
- Be careful not to leave resources that you think you have deleted but are actually still remaining
- destroy.sh (agent in BYOC) / compute pool / slots / endpoints
If You Are Going to Use Openflow Going Forward
- Use gen2, and build using SQL procedures
