Hi team! :wave: I've been investigating a silent d...
# help-connector-development
j
Hi team! 👋 I've been investigating a silent data-loss bug in
source-snowflake
(currently on
1.0.5
, but I confirmed it's still reproducible on
1.1.0
) reported here: github.com/airbytehq/airbyte/issues/70257 (filed by someone else back in December). Incremental syncs return 0 records when the stored cursor checkpoint equals the current
MAX(cursor_field)
, with no error. Root cause looks like:
SnowflakeLocalDateTimeAccessor
in
SnowflakeFieldTypes.kt
truncates nanosecond precision down to microseconds when reading the
MAX(cursor)
value used to build the query's upper bound, but the actual column values in Snowflake keep full nanosecond precision. When the sync window collapses to a single point (
cursor == MAX
), the truncated upper bound ends up strictly less than the real value of the row(s) it's meant to include, so the WHERE clause silently excludes them. The fix would live entirely in the connector's own source, not the shared Bulk CDK. Before I put together a PR: I noticed the contributing guide mentions community contributions to "the data replication platform" stopped being accepted in mid-2025, and the accepted-contributions list is framed around API/Connector-Builder connectors. Since Snowflake is a JDBC/Kotlin connector, is a bug fix like this still in scope for a community PR, or should this go through another channel? Happy to open the PR either way if someone can point me in the right direction. Thanks!
a
ohh nice find
we've been bitten by this type of bug before
I think open a PR, that would be my guess at the best starting point
It's challenging to get a devs attention on it though
r
Hello! We do still accept PRs for connectors. I'm poking around to find out if the submissions are for community connectors or all connectors.
A PR for the Snowflake connector should be fine.