Skip to content

RFC95: Generating Study data files (clinical, MAF, MRNA, generic assay data and case lists ONLY) #11482

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

Open
wants to merge 31 commits into
base: master
Choose a base branch
from

Conversation

forus
Copy link
Contributor

@forus forus commented Apr 4, 2025

Generating the downloadable files on the fly. See more details here https://docs.google.com/document/d/1SQ033yQUc9VJquIuHon1WXnrnaIwORi114Q0daXLrl4/edit?tab=t.0

Describe changes proposed in this pull request:

  • enable downloading studies via /export/study/{study id}.zip
  • only works when dynamic_study_export_mode flag is on.

Checks

Any screenshots or GIFs?

If this is a new visual feature please add a before/after screenshot or gif
here with e.g. Giphy CAPTURE or Peek

Notify reviewers

Read our Pull request merging
policy
. It can help to figure out who worked on the
file before you. Please use git blame <filename> to determine that
and notify them either through slack or by assigning them as a reviewer on the PR

@forus forus requested a review from haynescd April 4, 2025 13:10
@forus forus changed the title Rfc95 study download RFC95: Generating Study data files (clinical, MAF and case lists ONLY) Apr 4, 2025
Copy link

sonarqubecloud bot commented Apr 9, 2025

Quality Gate Failed Quality Gate failed

Failed conditions
1 New Bugs (required ≤ 0)
1 New Blocker Issues (required ≤ 0)

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

forus added 24 commits April 14, 2025 14:42
To enable streaming for Study Data Export (RFC95).
Unlike caching http requests `ContentCachingRequestWrapper` for enabling
multiple request body reads, wrapping responses in `ContentCachingResponseWrapper` is not necessary and not used anywhere.
The application caching behaviour (with `@Cachable` annotation) does not depend on any of these.
- Introduce long table
- Convert records back to pojos. Record fields are mapped by position with mybatis
- Write tests for clinical data table
- Make conditional Java Config
We do defensieve assumption check to make sure clinical file rows will be formed correctly
@forus forus force-pushed the rfc95-study-download branch from 71ea083 to 03bdf0d Compare April 14, 2025 12:42
@forus forus changed the title RFC95: Generating Study data files (clinical, MAF and case lists ONLY) RFC95: Generating Study data files (clinical, MAF, MRNA, generic assay data and case lists ONLY) Apr 15, 2025
forus added 4 commits April 15, 2025 15:35
toRow() gave different results on the first and subsequent calls.
The first calls were made for getting the header only.
They were blocking for the followup rows
MyBatis does not like if result does not have <id ...>
If it is not specified, it picks first field as a key.
Rows that would have the same key will be skipped!
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant