I’m trying to back Ontology objects with Snowflake hybrid tables so I can enforce referential integrity on the data model… However, changes made in Snowflake are taking far too long to appear in the Ontology, despite one-minute update detection on the virtual tables.
I’ve isolated to a minimal test comparing a standard table and a hybrid table, each backing an object type directly. Both had the same two columns (id and packSize), and the Snowflake warehouse had auto-resume enabled.
Test performed: inserted a row, updated its pack size, then deleted it, waiting for each change to appear before continuing. These are the times from when the snowflake write occurred to being present in the Ontology object query result.
| Source | Insert | Update | Delete |
|---|---|---|---|
| Standard table | 3m07s | 2m04s | 3m05s |
| Hybrid table | 72m05s | 60m19s | 61m38s |
Change tracking was enabled on the standard table; Snowflake does not support it on hybrid tables.
Data connection config:
- Auth: External OAuth,
- Networking: egress policies for:
- Snowflake account and regional service endpoints on port 443.
- JDBC result-stage endpoints on port 443, including global and both regional hostname formats.
- The Snowflake OCSP response cache on port 80.
I did try adding an updateTimestamp column to the hybrid table/ontology object in the event the ontology change detection / cache invalidation process relied on it but it didn’t help and I’m out of ideas.
Is this delay expected for hybrid virtual tables? Is there a supported configuration to ensure it actually becomes available in the Ontology in a timely manner?
