-
Notifications
You must be signed in to change notification settings - Fork 3
fix(lineage): resolve node-key targets and bare schema.table without column misparse (#154) #156
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
8 commits
Select commit
Hold shift + click to select a range
8066749
feat(graph): add split_type_prefix for node-key target detection (#154)
c2j 481a3f7
fix(lineage): resolve node-key targets and bare schema.table without …
c2j 62f508e
docs(cli): document node-key target syntax in lineage help (#154)
c2j 8d3e756
fix(lineage): match schema case-insensitively in find_table_node (#154)
c2j 41ab622
fix(lineage): distinguish ambiguous vs missing table in fallback note…
c2j c8a4249
fix(lineage): stop ambiguous table half with qualifier hint instead o…
c2j 802fd91
refactor(lineage): tighten target-parsing comments (#154)
c2j 53a1361
fix(lineage): case-insensitive node-key tags; de-narrate comments; ti…
c2j File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
Oops, something went wrong.
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[suggestion] When the dotted table half is
TableLookup::Ambiguous, the CLI still falls back to treating the whole target as a table reference (same recovery asMissing). Formid_yjqs_detail.nonexistent_colwith that table in two schemas, the user almost certainly meant column-level lineage and only failed to schema-qualify; reinterpretingmid_yjqs_detail.nonexistent_colas a table name yields a follow-onNo table found matching '…'that hides the actionable fix (qualify asschema.mid_yjqs_detail.col). The newAmbiguousvariant is the right distinction, but it is not used as a terminal error.Suggestion: On
Ambiguous, print that the table name is ambiguous across schemas, tell the user to qualify (schema.tableorschema.table.column), and return. Keep the Missing → whole-target table fallback only for the trueschema.tablemis-split case.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Implemented in commit c8a4249. An ambiguous table half is now a terminal error with an actionable schema-qualification hint (qualify it as 'schema.X' for table-level lineage or 'schema.X.col' for column-level lineage). The whole-target fallback remains only for TableLookup::Missing, which is the true schema.table mis-split recovery path. This behavior is locked by should_say_ambiguous_when_table_half_is_ambiguous.