-
Notifications
You must be signed in to change notification settings - Fork 15
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
Populate metadata - idempotent #66
Comments
Issues to consider:
|
I am not sure at the moment about updates, this is much more complicated. Keep in mind that annotations are shared and if PK is updated then this will be completely new annotation. |
One possible solution for update could be that if namespace is considered unique per Image/Well then script could proceed as normal, deleting/unlinking (see delete issues in #67) and creating new one |
If the requirement is to only create an annotation for namespace 'xxxx' if an image/well doesn't already have an annotation in |
So going more to the details Use case 1: general
|
Existing implementation doesn't allow to define different PK for the same NS, so it looks like it should be global. It is very likely to get an exception https://github.com/openmicroscopy/openmicroscopy/blob/metadata52/components/tools/OmeroPy/src/omero/util/metadata_mapannotations.py#L218. Would be sufficient to extend default config by adding
|
Two concrete examples of usecase 4 that I have: 1. updating some gene symbols 2. changing channel information annotations I am happy with any of the following but i. deleting all annotations for the whole screen and reloading (obviously this will take time in some screens) ii. allowing deletion of a certain annotation type e.g. Channel info or Gene Identifier/Gene Symbol and reloading just that iii. allowing deletion of a certain annotation type at a more precise level e.g. on certain wells for the case of Gene Symbol changing in a small % of wells. |
As we don't operate on diffs but entire bulk file I think entire screen has to be scanned everytime to detect what data has changed. Do we have any way to detect the diff? |
Just giving more feedback. running populate metadata against already annotated data result in
|
Populate_metadata plugin allows populate map annotations based on a bulk file with the given context:
Second step could be idempotent, rerunning the same command
bin/omero metadata populate --context bulkmap --cfg /path/to/bulkmap-config.yml Screen:ID
shouldn't thrown any exceptions.cc @manics @joshmoore @eleanorwilliams
The text was updated successfully, but these errors were encountered: