-
Notifications
You must be signed in to change notification settings - Fork 113
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
Pipelines rendering breaks with exception, ver. 9.2.0, 10.0, yet works on 9.1.0 #2106
Comments
More detailed error log coming from kedro-viz in dev mode:
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. |
Hi Team, The FE fix is a good fallback. I was testing the error scenario and I could reproduce the error with the below pipeline_resgistry configuration in the demo-project - def register_pipelines() -> Dict[str, Pipeline]:
"""Register the project's pipelines.
Returns:
A mapping from a pipeline name to a ``Pipeline`` object.
"""
ingestion_pipeline = di.create_pipeline()
feature_pipeline = fe.create_pipeline()
modelling_pipeline = mod.create_pipeline(
model_types=["linear_regression", "random_forest"]
)
reporting_pipeline = rep.create_pipeline()
error_pipelines = {
"ingestion_pipeline": ingestion_pipeline,
"feature_pipeline": feature_pipeline,
"modelling_pipeline": modelling_pipeline,
"reporting_pipeline": reporting_pipeline
}
error_pipelines["__default__"] = pipeline(sum(pipeline for pipeline in error_pipelines.values()), tags=["default_tag1", "default_tag2"])
return error_pipelines
# The above error pipelines will break kedro-viz while a similar setup below does not have any issue.
working_pipes = {
"__default__": pipeline(
ingestion_pipeline
+ feature_pipeline
+ modelling_pipeline
+ reporting_pipeline
, tags=["default_tag1", "default_tag2"]),
"Data ingestion": ingestion_pipeline,
"Modelling stage": modelling_pipeline,
"Feature engineering": feature_pipeline,
"Reporting stage": reporting_pipeline,
"Pre-modelling": ingestion_pipeline + feature_pipeline,
}
return working_pipes
cc: @rashidakanchwala @jitu5 Can you please confirm, if the setup breaks Viz. Thank you |
Yes, this is it!! super @ravi-kumar-pilla !!! |
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
The text was updated successfully, but these errors were encountered: