Fix/issue 26670 quicksight column aliases#27047
Fix/issue 26670 quicksight column aliases#27047Esvanth wants to merge 17 commits intoopen-metadata:mainfrom
Conversation
… types (json, array, geo)
- Restore numpy vectorization for string types in max_length/min_length update_accumulator (as requested by TeddyCr — performance optimization must not be removed) - Add separate elif branch for complex types using pandas str.len() - Extend fn() SQL path to compute min/max length for complex types via LenFn (which already casts to text for Postgres and similar) - Replace return None in distinct_count.fn() with actual DISTINCT COUNT using CAST to Text, so complex types now produce real metric values - Add is_length_computable() helper in registry.py to consolidate the repeated is_concatenable/is_collection/is_struct/is_complex pattern
Moves `from numpy import vectorize` from inside `update_accumulator` to module-level imports in max_length.py and min_length.py, fixing the isort checkstyle validation failure.
The import line exceeded isort's 88-char limit (profile=black). Wraps is_complex_type, is_concatenable, is_length_computable in parentheses across multiple lines in max_length.py and min_length.py.
… lineage and fix Windows env
|
Hi there 👋 Thanks for your contribution! The OpenMetadata team will review the PR shortly! Once it has been labeled as Let us know if you need any help! |
|
Hi there 👋 Thanks for your contribution! The OpenMetadata team will review the PR shortly! Once it has been labeled as Let us know if you need any help! |
Code Review ✅ Approved 2 resolved / 2 findingsFixes QuickSight column alias resolution in lineage matching by addressing substring check false-positives and encoding issues with invalid bytes. All findings resolved. ✅ 2 resolved✅ Bug: Substring check for parent table causes false-positive lineage matches
✅ Quality: errors='ignore' silently drops invalid bytes in generated files
OptionsDisplay: compact → Showing less information. Comment with these commands to change:
Was this helpful? React with 👍 / 👎 | Gitar |
|
Hi, could a maintainer please add the appropriate labels (e.g., type:bug-fix, component:ingestion) to trigger the CI checks? Thank you! |
|
@Esvanth looks like you mixed two issues in one pr can you please check? I'm referring to profiler changes here |
|
Please add a safe to check parameter so it will be easy |
Problem
CustomSql queries in QuickSight using column aliases (e.g.,
SELECT src AS alias) caused lineage links to be lost because the connector couldn't map the aliased data model column back to the source.Solution
_yield_lineage_from_queryto prioritize results fromlineage_parser._build_column_lineage_from_parserwith robust multi-table matching (filtering by source column parent).setup.py(uvloop) andscripts/datamodel_generation.py(Unicode/Case-sensitivity).Verification
ingestion/tests/unit/topology/dashboard/test_quicksight.py.