entropy-lab / entropy

BSD 3-Clause "New" or "Revised" License
30 stars 13 forks source link

[BUG] Dashboard Experiments Table Success Filter Causes Client-Side Error #229

Closed urig closed 2 years ago

urig commented 2 years ago

Describe the bug

In the Entropy Dashboard app's "Results Page" there is a table showing experiment results. The table used to contain a custom filter for the "success" column that was based on a Dash dcc.Checklist component.

Once we've converted the Dashboard app to a Dash Multi-Page App a bug became evident in the implementation of the filter. The implementation embedded the dcc.Checklist component in the DataTable using client-side javascript based on the appendChild() DOM API. When a user switched to a different page React went over the components in the DataTable and tried to dispose of them and when it encountered the dcc.Checklist this failed with a client-side error.that said:

Failed to execute 'removeChild' on 'Node': The node to be removed is not a child of this node.

Due to this error, the success filter has been disabled and removed. It should be re-implemented in a way that does not trigger an error.

To Reproduce Steps to reproduce the behavior:

  1. Checkout to commit e0b6cbdf1ac56ab63b1350d7d4836b82023044ef.
  2. Run poetry run cli serve . (preferably in anexisting project directory)
  3. Browse to localhost:8050
  4. Browse to localhost:8050/params

Expected behavior A clear and concise description of what you expected to happen.

Screenshots image

urig commented 2 years ago

@galwiner seeing as the "success" column has been removed from the experiments table in the dashboard, perhaps this issue should be closed?