-
Notifications
You must be signed in to change notification settings - Fork 7
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
Plate replicate rollups and AbDisc assay re-import #5906
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
handle replicate well groups on insert
clean up replicate stats on run delete
Handle merging of plate data during run re-import
cnathe
requested changes
Oct 9, 2024
assay/src/org/labkey/assay/plate/AssayPlateMetadataServiceImpl.java
Outdated
Show resolved
Hide resolved
assay/src/org/labkey/assay/plate/AssayPlateMetadataServiceImpl.java
Outdated
Show resolved
Hide resolved
assay/src/org/labkey/assay/plate/AssayPlateMetadataServiceImpl.java
Outdated
Show resolved
Hide resolved
cnathe
approved these changes
Oct 11, 2024
assay/src/org/labkey/assay/plate/AssayPlateMetadataServiceImpl.java
Outdated
Show resolved
Hide resolved
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Rationale
Introduces support for the calculation of standard deviation and mean values for replicate well groups for protocols that support plate metadata in LKB folders. Replicate aggregates are computed for numerical measures in the results domain and are automatically joined to the results views.
In support of LKB AB discovery scenarios (and potentially others), this also introduces the notion of the addition of assay run data over time through the existing assay run re-import feature. Plate set plate data can be added to a run over multiple imports. The server will attempt to combine / merge prior data with new data on a plate boundary within a single plate set during each subsequent import / re-import.
Changes
AssayPlateReplicateStats
to store the replicate standard deviation and mean values. One row per replicate well group per run will be created.AssayPlateReplicateStats
domain to track any numeric measures.AssayPlateTriggerFactory
to handle updates and deletes on the results table. Depending on whether the updates occur on replicate well group rows, recompute and update replicate stats. Unfortunately, assays handle inserts and updates via different code paths, the former happens inAssayRunUploadContext.ReImportOption
enum
to control the server side re-import behavior. The parameter can be passed into theImportRunApiAction
and defaults to the current behavior ofREPLACE
.AssayPlateMetadataServiceImpl.mergeReRunData
handles the details of merging current and previous results data. If data is merged, the uploaded data is replaced with thetsv
tabular representation of the combined data and the data outputExpData
is updated to reflect the change. This is always the case regardless of whether previous or current data is in the graphical format.ABDisc
re-import where plate set data can potentially be merged.PlateMetadataImportHelper.afterBatchInsert
.AssayPlateMetadataServiceImpl.mergeReRunData
. We end up removing all hit selections that we do not plan to carry forward based on our plate merge policy. Any remaining hits are carried forward in theImportHelper
.Debug Notes
reImportOption
in theImportRunApiForm
aroundImportRunApiAction:356
implementation Details
Statistical values should appear automatically in the default view of the results table. Stats fields should be aligned close to their source.
After the re-import case if data is combined with a previous run
Related Pull Requests
LabKey/commonAssays#813