Open Lasica opened 1 day ago
More detailed error log coming from kedro-viz in dev mode:
search-utils.js:28 Uncaught TypeError: Cannot read properties of undefined (reading 'match')
at getHighlightedText (search-utils.js:28:1)
at node-list-items.js:34:1
at Array.map (<anonymous>)
at highlightMatch (node-list-items.js:32:1)
at node-list-items.js:96:1
at recomputationWrapper (index.js:67:1)
at memoized (defaultMemoize.js:123:1)
at dependenciesChecker (index.js:81:1)
at memoized (defaultMemoize.js:123:1)
at dependenciesChecker (index.js:77:1)
console.js:288 The above error occurred in the <NodeListProvider> component:
at NodeListProvider (http://localhost:4141/static/js/bundle.js:19467:5)
at ConnectFunction (http://localhost:4141/static/js/bundle.js:275443:103)
at div
at div
at Sidebar (http://localhost:4141/static/js/bundle.js:25109:5)
at ConnectFunction (http://localhost:4141/static/js/bundle.js:275443:103)
at div
at FlowChartWrapper (http://localhost:4141/static/js/bundle.js:10030:5)
at ConnectFunction (http://localhost:4141/static/js/bundle.js:275443:103)
at Route (http://localhost:4141/static/js/bundle.js:278265:29)
at Switch (http://localhost:4141/static/js/bundle.js:278434:29)
at ApolloProvider (http://localhost:4141/static/js/bundle.js:318559:19)
at GraphQLProvider (http://localhost:4141/static/js/bundle.js:22600:5)
at Router (http://localhost:4141/static/js/bundle.js:277937:30)
at BrowserRouter (http://localhost:4141/static/js/bundle.js:277451:35)
at div
at Wrapper (http://localhost:4141/static/js/bundle.js:30203:5)
at ConnectFunction (http://localhost:4141/static/js/bundle.js:275443:103)
at Provider (http://localhost:4141/static/js/bundle.js:275169:5)
at App (http://localhost:4141/static/js/bundle.js:1590:5)
at Container
Consider adding an error boundary to your tree to customize error handling behavior.
Visit https://reactjs.org/link/error-boundaries to learn more about error boundaries.
Somehow a tag has no name which results in node.text becoming undefined and breaking in match function
Kedro-viz v10
Updated description with additional findings.
Description
Slack discussion: https://kedro.hall.community/support-lY6wDVhxGXNY/kedroviz-crashes-randomly-with-javascript-type-error-after-adding-changes-to-pipeline-registry-yzcmqg0kbQqS
What first triggered this issue was a beningn attempt to reorder the pipelines (whole diff between commits that broke the kedro-viz in our project):
^ this was in version 9.2.0
Currently we reversed to version 9.1.0 to keep working and then tried to updating to 10.0. It was working for a few minutes and without any further changes it started consistently crashing on start with the error posted at the very end of this report.
@ edit: after further investigation with dev kedro-viz, we found out that it's a separate issue at 10.0 and it's related to one tag not getting registered/having undefined "name" in js code. The kedro-viz breaks at the pipeline tagged with it and after refreshes/restarts automatically remembers the path to broken page and reloads that one, that's why it seemed to be okay and broke at some point. When manually editing the address bar we can make restore it from crash loop or when we comment out the offending tag from pipeline. We're not sure what separates this tag from others that it behaves differently - it's notable that it does not list in main.tags list of registered tags in generated page's JS.
Context
Makes it unable to work with kedro-viz in newer versions.
Steps to Reproduce
Not well known. In bigger project the kedro-viz just breaks at some random pipelines or at start with exceptions - difficult to track what was the origin/tipping point for the error to occur.
Expected Result
Kedro viz working, stable as in 9.1.0.
Actual Result
Kedro viz unusable.
In 9.2.0 the error of javascript when browsing was typerror exception
in 10.0, the error seems different, may be a different cause
Your Environment
python 3.10, kedro 0.19.8, kedro viz tested 9.1-10.0, hooks enabled on kedro-viz loading (tried with and without), OS: macos / should not be relevant browser: firefox 130.0, edge 1.2.9
Checklist