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

Add dynamic row loading in samplesheets Vue app #2031

Open
mikkonie opened this issue Oct 22, 2024 · 0 comments
Open

Add dynamic row loading in samplesheets Vue app #2031

mikkonie opened this issue Oct 22, 2024 · 0 comments
Assignees
Labels
app: samplesheets Issue in the samplesheets app feature Requested feature or enhancement
Milestone

Comments

@mikkonie
Copy link
Contributor

mikkonie commented Oct 22, 2024

I was sure there already was an open issue for this, but apparently not.

Currently, we provide the entire study with all study/assay table rows from an Ajax view into the client when loading the sample sheets Vue app. This was previously optimized into a condition enough to handle studies the size of N rows, but recently we have seen the introduction of studies the size of N*3 into our production server and the whole thing becomes way too unscalable.

AgGrid does provide APIs for dynamically loading data, so we should implement that. For the browser view with cache enabled, this should be quite simple: simply return rows x-y from the cached data.

For editing, things becomes more interesting. We do comparisons with table data within the client, so if we haven't loaded some data we can't compare to it. This has to be rethought somehow. It's also possibly we initially implement this only for the browser mode. I will think about it.

In any case, this should be done for the new Vue app version after doing #994 to avoid needless double work. In fact, it might require even waiting for the release where we drop the initial version of the app, but we'll see.

It would also make sense to look at #1559 while doing this, as that would optimize things further. Also related to #899, but that should definitely be done only after retiring the old app.

Tagging this tentatively for v1.2, but that may change.

Spec (WIP)

  • Add handling of dynamic requests to Ajax views
  • Implement dynamic data loading with AgGrid in browsing mode
  • Implement dynamic data loading in editing mode?
  • Add settings to control amount of data loaded at once?
@mikkonie mikkonie added feature Requested feature or enhancement app: samplesheets Issue in the samplesheets app labels Oct 22, 2024
@mikkonie mikkonie added this to the v1.2.0 milestone Oct 22, 2024
@mikkonie mikkonie self-assigned this Oct 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
app: samplesheets Issue in the samplesheets app feature Requested feature or enhancement
Projects
None yet
Development

No branches or pull requests

1 participant