Closed HX-Tfd closed 1 month ago
Small improvements according to demo:
Bigger improvements to analyze (dont implement yet...)
Two comments about "future considerations":
1.We should consider not to re-render the entire graph if the view has not changed. This should also be addressed when we implement graph expansion/compression, where neighbour nodes can be added/removed gradually.
Re-render is ok, but we should no re-layout.
2.We should maybe re-activate the open lineage button for the connections, in which we show the lineage graph that belongs to the entire connection.
No, connection lineage makes no sense. You can already select all DataObjects with the same connection, thats enough...
Primary changes:
1.Implemented action/data graph separation(#74).
src/util/ConfigExplorer/ConfigData.ts
and the data and action graphs are created the first time we click on the corresponding view in the drop-down button2.Implemented #76.
The custom node and edge components can be enabled by doing the following:
LineageTabWithSeparateView
):type: 'customDataNode'
in thecreateReactFlowNodes
function,type: 'customEdge'
, in thecreateReactFlowEdges
function,nodeTypes={nodeTypes} edgeTypes={edgeTypes}
in the Reactflow tag inLineageTabSep
. Note that we don't use custom edges, butsmoothStep
instead. Otherwise the edges get messy.flowProps
interface inLineageTabWithSeparateView
and access it in the custom node component. The additional props can be passed insrc/components/ConfigExplorer/ElementDetails.tsx
where theLineageTabSep
is opened.3.Refactored components of LineageTab into a folder.
LineageGraphComponents
(Custom Nodes and Edges),LineageGraphToolbar
(reactflow components refactored from the old LineageTab) and the old (LineageTab
) and newer version (LineageTabWithSeparateView
) of the LineageTab.Minor changes:
1.Disabled the open lineage button in Connections in the ConfigurationTab, as connections don't have a lineage (and opening the tab would cause an error). 2.Added several Unit Tests for the Graph class (in the
tests
folder). The imports are updated correspondingly. 3.Added/removed comments and TODOsPotential problems
1.In the current layout, the edges still overlap with the nodes sometimes 2.What information should we be displaying on the node?
Incomming Features
1.Visualizing the statuses of the nodes of a single run. For the moment, only the statuses of the last runs are shown. However, this could make one falsely believe that the displayed status icons are all from the same last run. We can consider implementing new drop-down bar to visualize different relevant information of the (same) last runs. 2.Making the LineageTabToolbar draggable
Future Considerations
1.We should consider not to re-render the entire graph if the view has not changed. This should also be addressed when we implement graph expansion/compression, where neighbour nodes can be added/removed gradually. 2.We should maybe re-activate the open lineage button for the connections, in which we show the lineage graph that belongs to the entire connection.