-
Notifications
You must be signed in to change notification settings - Fork 4k
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
BUG-FIX: Multicolview uncheck behavior #4863
Conversation
Signed-off-by: Marijn Valk <marijncv@hotmail.com>
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.
@sunishsheth2009 Can you take a look here? I know we implemented a fix for this on Databricks, but it would be nice to include this test coverage.
@marijncv Thanks a bunch for this fix, particularly the comprehensive test coverage!
@@ -75,6 +75,7 @@ export class ExperimentRunsTableMultiColumnView2 extends React.Component { | |||
filter: true, | |||
suppressMenu: true, | |||
suppressMovable: true, | |||
maintainColumnOrder: true, |
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.
What is required for? Maybe I am missing something but I can't find any reference for maintainColumnOrder
.
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 saw it mentioned here in the documentation of the Ag Grid. But I think I interpreted it incorrectly. I was trying to deal with the issue in which a re-checked column would appear at the end of the column list instead of in the place where it was before. See an example below where version and user have been unchecked and rechecked and ended up at the end of the list.
In any case, i'll remove the maintainColumnOrder
property here.
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 think this is a good change to do, so that when we check and uncheck columns the order is maintained. Feel free to add it back or we can add it another PR. :)
Didn't know this API existed. Thank you for pointing to the API.
mlflow/server/js/src/experiment-tracking/components/ExperimentRunsTableMultiColumnView2.test.js
Show resolved
Hide resolved
Signed-off-by: Marijn Valk <marijncv@hotmail.com>
@sunishsheth2009 thanks for your reply regarding the I don't particularly like the workaround, but at least it makes the unchecking/checking of columns have the desired effect on the MultiColView. What do you think? |
@marijncv can we push the change that we used at databricks to fix this issue to your branch? Your tests do makes sense and are great, but is it ok if we change the JS implementation logic a bit? |
@sunishsheth2009 sure, go ahead! |
I have pushed the changes, please let me know your thoughts on the changes and has it fixed the issue that you were trying to solve. Thank youi |
c3ad087
to
b836473
Compare
Signed-off-by: Sunish Sheth <sunishsheth2009@gmail.com>
b836473
to
f770088
Compare
Works like a charm! Thanks @sunishsheth2009! |
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 @marijncv for the awesome submission + test coverage & thanks @sunishsheth2009 for the tweaks! If there are no objections (let me know @sunishsheth2009), let's merge this!
Signed-off-by: Marijn Valk marijncv@hotmail.com
What changes are proposed in this pull request?
This bugfix makes the MultiColumnView react to the checked/unchecked columns by updating the visible columns. Partially resolves #4819
How is this patch tested?
Go to the experiment UI, switch to the multi column view and select/unselect some columns and see them become visible/invisible
Release Notes
Is this a user-facing change?
(Details in 1-2 sentences. You can just refer to another PR with a description if this PR is part of a larger change.)
What component(s), interfaces, languages, and integrations does this PR affect?
Components
area/artifacts
: Artifact stores and artifact loggingarea/build
: Build and test infrastructure for MLflowarea/docs
: MLflow documentation pagesarea/examples
: Example codearea/model-registry
: Model Registry service, APIs, and the fluent client calls for Model Registryarea/models
: MLmodel format, model serialization/deserialization, flavorsarea/projects
: MLproject format, project running backendsarea/scoring
: MLflow Model server, model deployment tools, Spark UDFsarea/server-infra
: MLflow Tracking server backendarea/tracking
: Tracking Service, tracking client APIs, autologgingInterface
area/uiux
: Front-end, user experience, plotting, JavaScript, JavaScript dev serverarea/docker
: Docker use across MLflow's components, such as MLflow Projects and MLflow Modelsarea/sqlalchemy
: Use of SQLAlchemy in the Tracking Service or Model Registryarea/windows
: Windows supportLanguage
language/r
: R APIs and clientslanguage/java
: Java APIs and clientslanguage/new
: Proposals for new client languagesIntegrations
integrations/azure
: Azure and Azure ML integrationsintegrations/sagemaker
: SageMaker integrationsintegrations/databricks
: Databricks integrationsHow should the PR be classified in the release notes? Choose one:
rn/breaking-change
- The PR will be mentioned in the "Breaking Changes" sectionrn/none
- No description will be included. The PR will be mentioned only by the PR number in the "Small Bugfixes and Documentation Updates" sectionrn/feature
- A new user-facing feature worth mentioning in the release notesrn/bug-fix
- A user-facing bug fix worth mentioning in the release notesrn/documentation
- A user-facing documentation change worth mentioning in the release notes