-
Notifications
You must be signed in to change notification settings - Fork 2
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
IDC ENH: 2 servers #141
base: master
Are you sure you want to change the base?
IDC ENH: 2 servers #141
Conversation
Here tested against segmentation: note that both IDC server and google store have both source data and segmentation. where the filter ?seriesInstanceUID= applies only to the IDC server (while I fetch all from the google store) |
|
Reporting here some discussion happened on slack for not losing it: I am hesitant to put this directly in OHIF-v2 master branch for the following reasons:
for all these reasons I feel this should live only in a IDC branch (not even IDC master). My understating was that this should never go in production, wasn't it? If we don't want to diverge and put this back to IDC/OHIF master fork, it would be possible but some more refactoring would be needed (for example if it is only one server, OHIF should bounce back to the old fetching behavior) and I would pass this also for Igor review. But this would imply some other days of dev (further refactoring/Igor review/etc...). I am super open to discuss with you guys more this point. In general, I think this 'fast' approach was a good starting point to experiment with multiple servers. We can test this experiment on sandbox and then next week we can discuss the next step (further refactoring/merging into master IDC or OHIF forks). |
Update to OHIF v2.14.26 and added iin the thumbnail the origin server NOTE: the logic is that if there are duplicate series during the merge, it will take the series from the first server (the test proxy). |
…into IDC2servers
Update IDC2servers to 4.12.31
Update to OHIF 4.12.32
Update IDC to version 4.12.41
…IF#2972) * fix: 2965 Correct Parsing Logic for Qualitative Instance Level SR * fix: 2965 Correct Parsing Logic for Qualitative Instance Level SR * fix: 2965 Correct Parsing Logic for Qualitative Instance Level SR
- @ohif/[email protected] - @ohif/[email protected] - @ohif/[email protected]
- @ohif/[email protected] - @ohif/[email protected] - @ohif/[email protected] - @ohif/[email protected]
- @ohif/[email protected] - @ohif/[email protected] - @ohif/[email protected]
- @ohif/[email protected] - @ohif/[email protected] - @ohif/[email protected]
- @ohif/[email protected] - @ohif/[email protected] - @ohif/[email protected] - @ohif/[email protected]
Update to OHIF v4.12.45
- @ohif/[email protected] - @ohif/[email protected]
- @ohif/[email protected] - @ohif/[email protected] - @ohif/[email protected] - @ohif/[email protected] - @ohif/[email protected] - @ohif/[email protected] - @ohif/[email protected] - @ohif/[email protected]
- @ohif/[email protected] - @ohif/[email protected]
Update to OHIF v4.12.49
* chore: update issue templates * add template to PRs * update for pr titles * update * update * update description
- @ohif/[email protected] - @ohif/[email protected]
remove redundant code to update studydatamanager
Update to OHIF v4.12.50
I think this is still an important issue, but not for v2. I think we should focus any new features on v3. What do you think @fedorov |
We are using this feature all the time, and in the past this branch of IDC fork was kept up to date with OHIF v2 master. Indeed, it was never the goal to add this feature to v2 proper. It would be great if the 2 server fork could be synced periodically, and we should probably retarget this issue for v3 as "idc:candidate". |
@pieper @fedorov This is a first attempt to implement fetching from multiple servers.
The user case is 2 servers only in reading. The first with the source data, the second with annotation. Specifically the first is supposed to be a publlic server (e.g. dev-proxy.canceridc.dev), the second a google store.
This has been tested over this datasets https://viewer.imaging.datacommons.cancer.gov/viewer/1.3.6.1.4.1.14519.5.2.1.6655.2359.247426265538388028079845922798 (only source data)
against the dataset in this google store /projects/idc-tcia/locations/us-central1/datasets/tcia-idc-datareviewcoordination/dicomStores/planar_annotations/study/1.3.6.1.4.1.14519.5.2.1.6655.2359.247426265538388028079845922798 (source data + annotation)
Currently the logic is to fetch the data from both servers, merge the results (for series found twice, it ignores the ones coming from the second server).
the first server is specified in the config file and the config parameters for enabling the GoogleCloudAdapter as well. i.e.:
https://github.com/Punzo/Viewers/blob/IDC2servers/platform/viewer/public/config/default.js#L18-L51
Once this is setup, one can open the study from two servers as:
http://localhost:3000/viewer/1.3.6.1.4.1.14519.5.2.1.6655.2359.247426265538388028079845922798!secondGoogleServer=/projects/idc-tcia/locations/us-central1/datasets/tcia-idc-datareviewcoordination/dicomStores/planar_annotations
Here a video:
2022-05-12.18-26-33.mp4
Two issues:
Before merging I would test this in the @pieper sandbox. Steve please let me know if you can deploy thiis branch https://github.com/ImagingDataCommons/Viewers/tree/IDC2servers against testing-viewer.canceridc.dev + googleAdapter