Repository navigation
fix: drop the Snowflake driver and move protobuf to 6.x - #114
Merged
Merged
Conversation
Author
There was a problem hiding this comment.
No issues found across 3 files
Confidence score: 5/5
- Automated review surfaced no issues in the provided summaries.
- No files require special attention.
Architecture diagram
sequenceDiagram
participant CI as CI Image Build
participant PyPI as PyPI / Package Resolver
participant RunnerReg as Runner Registration
participant Redash as Redash Importer
participant Phoenix as Phoenix Runner
participant Dgraph as Dgraph Runner
participant Snowflake as Snowflake Runner
participant Grype as Grype Scanner
Note over CI,PyPI: Dependency Resolution at Build Time
CI->>PyPI: Resolve all_ds group dependencies
PyPI-->>CI: protobuf >=6.31.1 (transitive via pydgraph 25.2)
CI->>PyPI: Install phoenixdb 1.2.2
PyPI-->>CI: phoenixdb + gssapi + requests-gssapi
CI->>PyPI: Install pydgraph 25.2.0
PyPI-->>CI: pydgraph + protobuf + grpcio-tools
Note over CI,Grype: CVE Scan
CI->>Grype: Scan installed packages
Grype-->>CI: No snowflake-connector-python or protobuf findings
Note over RunnerReg,Redash: Runtime Registration Check
Redash->>RunnerReg: Import all query runner modules
RunnerReg->>Redash: Discover available runners
alt Snowflake runner (driver missing)
Redash->>Snowflake: Attempt import
Snowflake-->>Redash: Module absent (not installed)
RunnerReg-->>Redash: Mark snowflake as disabled
end
alt Phoenix runner (driver present)
Redash->>Phoenix: Import with phoenixdb 1.2.2
Phoenix-->>Redash: Registration successful
RunnerReg-->>Redash: Mark phoenix as enabled
end
alt Dgraph runner (driver present)
Redash->>Dgraph: Import with pydgraph 25.2.0
Dgraph-->>Redash: Registration successful (protobuf 6.x compatible)
RunnerReg-->>Redash: Mark dgraph as enabled
end
RunnerReg-->>Redash: Return final enabled/disabled runner set
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
ENG-9235
what
Remove
snowflake-connector-pythonfrom theall_dsgroup. TheSnowflake runner stays in the code, and disables itself when its
driver is missing. The runner registration test now expects it to be
disabled.
Move
protobuffrom 3.20 to 6.x. The old phoenixdb and pydgraphreleases ship generated protobuf code that fails to load on protobuf
4 or later. A failure there stops
redashfrom importing at all, notonly the one runner. So phoenixdb moves to 1.2 and pydgraph moves to
25.2, and the runners need no code change. pydgraph 25.2 needs
protobuf 6.31.1 or later. A minimum on
grpcio-toolskeeps theresolver from falling back to a release that has no wheel.
phoenixdb 1.x also brings in
gssapiandrequests-gssapiforKerberos support.
why
Clear the remaining High and Critical findings in data source
drivers. Every Snowflake 3.x release caps
pyopensslbelow 26, whichblocks the
pyopensslfix. Snowflake 4.x needs code changes that wecannot test, and no deployment uses this data source. The protobuf
findings need protobuf 4.25.8 or later, which the old drivers do not
support.
testing
This relies on the unit suite and the runner registration test, which
fails if a driver no longer imports. We compared the driver calls in
the Phoenix, Dgraph and e6data runners with the new driver APIs. We
did not test against live Phoenix, Dgraph or e6data servers.
snowflake-connector-pythonorprotobuffindingsdocs
No docs needed.
🤖 Generated with Claude Code