-
Notifications
You must be signed in to change notification settings - Fork 3k
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
feat(dataProcessInstance): Support data process instance entity page and lineage #12499
feat(dataProcessInstance): Support data process instance entity page and lineage #12499
Conversation
@@ -19,6 +19,30 @@ import { | |||
import { decodeComma } from '../../../utils'; | |||
|
|||
const FILTER = 'filter'; | |||
const SEARCH_ENTITY_TYPES = [ | |||
EntityType.Dataset, |
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.
Why not use the backend to do this? Via default search entity types?
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.
Don't want them to appear in main search, only container page / impact analysis for now
@@ -146,6 +170,7 @@ export const EmbeddedListSearchSection = ({ | |||
|
|||
return ( | |||
<EmbeddedListSearch | |||
entityTypes={SEARCH_ENTITY_TYPES} |
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.
Again, we've been managing this on the backend for some time. Why move to the UI layer?
@@ -148,6 +149,14 @@ export const DefaultEntityHeader = ({ | |||
const displayedEntityType = getDisplayedEntityType(entityData, entityRegistry, entityType); | |||
const { platform, platforms } = getEntityPlatforms(entityType, entityData); | |||
|
|||
const containerPath = |
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.
nice refactor
@@ -75,6 +77,17 @@ export default function LineageSearchFilters() { | |||
/> | |||
</Tooltip> | |||
</ToggleWrapper> | |||
<ToggleWrapper> |
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.
Thanks for putting this behind a control. This is really nice!
</CardEntityTitle> | ||
</Tooltip> | ||
) : ( | ||
<EntityTitle title={name} onClick={onClick} $titleSizePx={titleSizePx} data-testid="entity-title"> | ||
<SearchTextHighlighter field="name" text={name || ''} /> | ||
<SearchTextHighlighter field="name" text={name || urn} /> |
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.
nice change
@@ -80,6 +78,7 @@ export default function useSearchAcrossLineage( | |||
platforms: [DBT_URN], | |||
}, | |||
{ entityType: EntityType.DataJob }, | |||
{ entityType: EntityType.DataProcessInstance }, |
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.
Always? I guess so
if (hideDataProcessInstances) { | ||
// Note: Will only pick one query node if there is lineage t1 -> q1 -> dpi1 -> q2 -> t2 | ||
// Currently data process instances can't have lineage to queries so this is fine | ||
newNodes = new Map( |
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.
I thought we were ignoring dpi as hops.. Do they still come back? So we have to filter them out and connect through them?
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.
I built this like I built the hide transformations
toggle, which doesn't alter the query and instead filters entirely on the frontend. If we alter the query, like the show hidden edges
(show ghost entities) toggle, then we have to refresh the graph when you toggle, because your graph state might be the result of many search across lineage calls and currently I don't store which ones have been made so we could re-issue them with the new params. I think it's a better experience to get the instant feedback on toggling + not having to re-expand your graph, but there is a concern that a graph could have many data process instances and thus cause slowdown. I think for now, this is ok.
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.
This looks great. Also relatively low risk...
The main question i had was around moving search entity types to the UI side instead of keeping it at the server.. Is there a reason I am missing? (I'm sure there is)
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.
LGTM!
Remove lineage_features
This reverts commit 0e7add9.
Checklist