Skip to content
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] UI Datatable Indicator Huge Table #2356

Open
1 task done
jolevesq opened this issue Jul 10, 2024 · 3 comments
Open
1 task done

[BUG] UI Datatable Indicator Huge Table #2356

jolevesq opened this issue Jul 10, 2024 · 3 comments

Comments

@jolevesq
Copy link
Member

Is there an existing issue for this?

  • I have searched the existing issues

Current Behavior

When there is a huge table and the table is very slow to respond, there is no loading indicator on the layer (green and spinning). The layer is not selected before download is completed. We do not even see the skeleton.

Expected Behavior

Before downloading data, the layer selector should be in proper state (loading if needed) and the skeleton should be shown.

Steps To Reproduce

  1. https://canadian-geospatial-platform.github.io/geoview/public/outlier-ESRI-maxRecordCount.html
  2. Wait for "Advance Polling District Boundaries of 2019"to finish loading
  3. Go to Data Table tabs
  4. Click "Advance Polling District Boundaries of 2019"

Anything else?

No response

@kaminderpal
Copy link
Member

kaminderpal commented Jul 16, 2024

Issues found while working on this ticket...

When we click on layer, features are fetched and icons are created from map canvas in the file
packages/geoview-core/src/geo/layer/geoview-layers/abstract-geoview-layers.ts
and function formatFeatureInfoResult, In this function when we build promisedAllCanvasFound array, it run's the forEach loop at line#1320.

While executing this step of creating promise and looping, it hangs the UI aka unresponsive or sometime page is crashed.

To resolve this we might need to paginate the data, instead of pulling all icons at single shot.

@kaminderpal
Copy link
Member

I tried to implement the web worker api, while implementing i found that web-worker has limitation where web-workers has no access to DOM elements.

@kaminderpal
Copy link
Member

When i comment out the building canvas icons for each feature, building and rendering data table is fast.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants