Handle HAPI FHIR's MDM service in HAPI JDBC mode #1216
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.
Description of what I changed
We use HAPI-FHIR's MDM service to help deduplicate and handle patients (and other resources) from multiple healthcare systems. Essentially, every MDM tracked resource gets a "golden" version, which can have a link to multiple "source" resources. For ease in our own analysis, we've forked this project to add support for MDM (only with the HAPI JDBC mode) in the following ways:
With the default parameters there should be no change to the pipeline. However, I've made an additional change:
This is a breaking change and might require a flag? There are probably other things to clean up and more tests to add, but I am mostly opening this to see if these changes would be welcome.
E2E test
TESTED:
Tests were done with ~150k patients, where roughly half were golden resources.
Checklist: I completed these to help reviewers :)
I have read and will follow the review process.
I am familiar with Google Style Guides for the language I have coded in.
My IDE is configured to follow the Google code styles.
I have added tests to cover my changes. (If you refactored existing code that was well tested you do not have to add tests)
I ran
mvn clean package
right before creating this pull request and added all formatting changes to my commit.All new and existing tests passed.
My pull request is based on the latest changes of the master branch.