* Add new Clinical Reasoning module
* Add config to get test up and running
* Removed FhirClient from tests
* First passing test
* Remove unused utilities
* Build updates
* exclude xxp3 and substitute with unbundled version
* Refactor to use provider factory and loader pattern
* First passing dstu3 test
* CR r4 test config and immunization tests
* Add base test classes
* Exclude transitive dependency xmlpull
* More dependency cleanup
* Refactor to remove JPA dependencies, rename module to hapi-fhir-storage-cr
* Fixes for duplicate xpp3 classes
* Remove more references to jpa
* Add mock FHIR server for terminology endpoint tests
* fix cql file for making providerr4 tests pass
* fix pom
* fix generic
* Adding r4 test cases for measure operations.
* Fix endpoint tests
* javadoc comment, temporarily comment out test results for practitioner sync
* javadoc typo fix
* adding java docs for cr module WIP
* Updates to clinical reasoning documentation
* More documentation updates
* docs now compile
* fix test
* DqmR4IT now successfully starts up, but the test does not pass
* Fix additionalData test
* Make measure service bean overridable
* adding clinical reasoning javadoc information
* Rename interfaces to start with I
* More styleguide updates
* Reformat all code in the storage-cr module
* More coding convention updates
* Remove bunches of unused code, reogranize so that fhir version in package name is consistent
* Clean up some static array initializations
* add practitioner patient list
* refactor product-line constant
* test dependency update
* add change log for cr module
* Add hapi-validation to the pom
* Exclude dependencies that are causing duplicates
* More dependencies and exclusions
* Make some base MeasureService components protected
* Update to latest cql compiler release
* fix measure service for null subject & practitioner and open up practitioner test
* Rev to release versions
* Add remaining Dstu3 tests
* update hedis bundle from policyHolder to beneficiary
* update snapshot
* Delete old CQL module
* Post-master-merge recovery
* Fix Java 17 feature usage issue
* update changelog with more information about new functionality
* Remove support chain wrapper usage
* Add javadocs to IResourceLoader
* added the property versioning for antlr jar.
* addressing code review comments.
* addressing code review comments.
* Fix typos in changelog
* Remove azure pipeline for cql module, add it for cr module
* Address exception comments, add Msg.code calls to exceptions
* Fix self-assignment bug
* Add storage-cr module to bom
* addressing coding comments.
* Addressed the variable naming convention to camelCase.
* Snapshot version bump
Co-authored-by: Brenin Rhodes <brenin@alphora.com>
Co-authored-by: Jonathan Percival <jonathan.i.percival@gmail.com>
Co-authored-by: justin.mckelvy <justin.mckelvy@smilecdr.com>
Co-authored-by: Ken Stevens <ken@smilecdr.com>
Co-authored-by: Chalma Maadaadi <chalma@alphora.com>
Co-authored-by: mdnazmulkarim <nazmul.karim@smilecdr.com>
Co-authored-by: Tadgh <garygrantgraham@gmail.com>
* fix handling of Windows line ends
* some tests need to wait a little longer for things to get done
* Windows path separator fix
* simpler lineend fix
* more timeouts and another path separator issue
* redo some timeout issues
* Issue in Windows: URI is not hierarchical
* another timeout issue
* Check for a null request resource in the ResponseHighlighterInterceptor when handling the response.
* Small fix to check the right resource, namely, the response resource, not the request resource.
* Check for theGraphqlResponse being null also, as otherwise this breaks a unit test.
* Add a new test to ResponseHighlighterInterceptor.
* Add test and implementation to fix potential NPE in pre-show resources
* add test
* WIP getting identical test scenario
* More robust solution
* Finalize Code
* Add changelog, move a bunch of changelogs
* Remove not needed test
* Minor refactor and reporting
* Added Solution + test
* Removed old methods
* fixed issues
* Added refactoring
* Deprecated methods on the interfaces
* Remove todo
* Documentation
* Changelog
* Changelog
* Changelog
* Changes made based on comments
* Changes made based on comments
* Clean up
* hapi bumping to version 6.3.6-SNAPSHOT
* hapi bumping to version 6.3.6-SNAPSHOT
* Start work on sharded DB
* Work on migrating
* Work
* Ongoing work
* Ongoing work
* Work
* Work
* Ongoing work
* Work
* Work
* Test fix
* Test fix
* Work
* Compile fix
* Test cleanup
* Test fix
* Resolve fixmes
* Resolve fixme
* Resolve compile errors
* Compile fix
* Fixes
* Work
* Add note for later
* Test fix
* Test fixes
* Build fix
* Test fixes
* Fixes
* Test fixes
* Test fixes
* Test fixes
* Test fix
* Fixes
* Fixes
* Remove dead code in pom
* More test cleanup
* Docs fix
* Changes
* Fix
* Fixes
* Resolve merge conflicts
* Build update
* Merge build fixes
* Version bump
* Address review comments
* Review comments
* Review comments
* Test fixes
* Test fix
* Cleanup
* init rev
* id to jpa and mongo id
* 3444 - replaced methods and constructors of ResourcePersistentId with child constructors and methods
* 3444 - replaced methods and constructors of ResourcePersistentId with child constructors and methods
* fixed conflicts, pulled from master
* fixed code for passing tests successfully
* changed PersistentId to Jpa in MdmSearchInterceptor
* added the todo comments with questions
* added one more question
* renamed TODO questions
* first pass at converting to generic ResourcePersistentId
* fix test
* fix test
* fix test
* make ResourcePersistentId abstract
* Generic type MdmLink
* Final TODOs
* Final TODOs
* cleanup
* fix test
* fix id to string
* fix cyclic package dep
* add <?> to Base so we can extract interface
* Revert "add <?> to Base so we can extract interface"
This reverts commit a806f3d2bc.
* switch to interface
* javadoc
* replace base with interface
* fix test
* add generic template to mdmdao
* remove unneccessary JpaPid casts
* remove unneccessary JpaPid casts
* remove unneccessary JpaPid casts
* remove unneccessary MongoPid casts
* fix test
* fix regression
* fix compile issues arising from merging master
* fix beans
* bump version to 6.3.3-SNAPSHOT
* change logs
* review feedback
* review feedback
* fixme
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* Add "distinct" and "sorted" to "Server knows how to handle" error message.
* Add code comments. No functional changed.
* Add credit for #4311
Co-authored-by: shollid3 <sloan.h.holliday@optum.com>
Co-authored-by: James Agnew <jamesagnew@gmail.com>
* Move partition ID up from ResourceModifiedMessage to BaseResourceModifiedMessage.
* Add a changelog. Add a new constructor that contains partition ID to ResourceOperationMessage. Add partition ID to the toString() for BaseResourceModifiedMessage. Tweak constructors of all classes to make sure ResourceModifiedMessage always sets default partition IDs, but BaseResourceModifiedMessage and ResourceOperationMessage do not.
* Reverse an accidental whitespace change.
* Small code review fixes including removing comments and updating changelog description.
* Restore whitespace to what it was on master.
* Fix YAML error.
* Improve JPA response messages
* FIxes
* Test fixes
* Test fixes
* Ongoing testing
* Work on messages
* Work on messages
* Add valueset
* Add response code enum
* Version bump
* Undo bump
* Improve changelog
* Test fixes
* Add javadocs
* Version bump HAPI
* Test fixes
* Test fix
* Test fixes
* Test fixes
* Account for review changes
* Test fix
* Docs fix
* Work on API
* Improve SqlQuery api
* jm wrong bundle entry url (#4213)
* Bug test
* here you go
* Generate relative URIs for bundle entry.request.url, as specified
* Point jira issue in changelog
* Adjust tests to fixes
Co-authored-by: juan.marchionatto <juan.marchionatto@smilecdr.com>
Co-authored-by: Tadgh <garygrantgraham@gmail.com>
* improved logging (#4217)
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* Rel 6 1 3 mergeback (#4215)
* Bump for CVE (#3856)
* Bump for CVE
* Bump spring-data version
* Fix compile
* Cut over to spring bom
* Bump to RC1
* remove RC
* do not contrain reindex for common SP updates (#3876)
* only fast-track jobs with exactly one chunk (#3879)
* Fix illegalstateexception when an exception is thrown during stream response (#3882)
* Finish up changelog, minor refactor
* reset buffer only
* Hack for some replacements
* Failure handling
* wip
* Fixed the issue (#3845)
* Fixed the issue
* Changelog modification
* Changelog modification
* Implemented seventh character extended code and the corresponding dis… (#3709)
* Implemented seventh character extended code and the corresponding display
* Modifications
* Changes on previous test according to modifications made in ICD10-CM XML file
* Subscription sending delete events being skipped (#3888)
* fixed bug and added test
* refactor
* Update for CVE (#3895)
* updated pointcuts to work as intended (#3903)
* updated pointcuts to work as intended
* added changelog
* review fixes
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
* 3904 during $delete expunge job hibernate search indexed documents are left orphaned (#3905)
* Add test and implementation
* Add changelog
* 3899 code in limits (#3901)
* Add implementation, changelog, test
* Update hapi-fhir-jpaserver-test-utilities/src/test/java/ca/uhn/fhir/jpa/provider/r4/ResourceProviderR4Test.java
Co-authored-by: Ken Stevens <khstevens@gmail.com>
Co-authored-by: Ken Stevens <khstevens@gmail.com>
* 3884 overlapping searchparameter undetected rel 6 1 (#3909)
* Applying all changes from previous dev branch to current one pointing to rel_6_1
* Fixing merge conflict related to Msg.code value.
* Fixing Msg.code value.
* Making checkstyle happy.
* Making sure that all tests are passing.
* Passing all tests after fixing Msg.code
* Passing all tests.
Co-authored-by: peartree <etienne.poirier@smilecdr.com>
* 3745 - fixed NPE for bundle with duplicate conditional create resourc… (#3746)
* 3745 - fixed NPE for bundle with duplicate conditional create resources and a conditional delete
* created unit test for skip of delete operation while processing duplicating create entries
* moved unit test to FhirSystemDaoR4Test
* 3379 mdm fixes (#3906)
* added MdmLinkCreateSvcimplTest
* fixed creating mdm-link not setting the resource type correctly
* fixed a bug where ResourcePersistenceId was being duplicated instead of passed on
* Update hapi-fhir-jpaserver-mdm/src/test/java/ca/uhn/fhir/jpa/mdm/svc/MdmLinkCreateSvcImplTest.java
Change order of tests such that assertEquals takes expected value then actual value
Co-authored-by: jdar8 <69840459+jdar8@users.noreply.github.com>
* added changelog, also changed a setup function in test to beforeeach
Co-authored-by: Long Ma <long@smilecdr.com>
Co-authored-by: jdar8 <69840459+jdar8@users.noreply.github.com>
* Fix to the issue (#3855)
* Fix to the issue
* Progress
* fixed the issue
* Addressing suggestions
* add response status code to MethodOutcome
* Addressing suggestions
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* Fix for caching appearing broken in batch2 for bulkexport jobs (#3912)
* Respect caching in bullk export, fix bug with completed date on empty jobs
* add changelog
* Add impl
* Add breaking test
* Complete failing test
* more broken tests
* Fix more tests'
* Fix paging bug
* Fix another brittle test
* 3915 do not collapse rules with filters (#3916)
* do not attempt to merge compartment permissions with filters
* changelog
* Rename to IT for concurrency problems
Co-authored-by: Tadgh <garygrantgraham@gmail.com>
* Version bump
* fix $mdm-submit output (#3917)
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* Gl3407 bundle offset size (#3918)
* begin with failing test
* fixed
* change log
* rollback default count change and corresponding comments
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* Offset interceptor now only works for external calls
* Initialize some beans (esp interceptors) later in the boot process so they don't slow down startup.
* do not reindex searchparam jobs on startup
* Fix oracle non-enterprise attempting online index add (#3925)
* 3922 delete expunge large dataset (#3923)
* lower batchsize of delete requests so that we do not get sql exceptions
* blah
* fix test
* updated tests to not fail
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
* add index
* Fix up colun grab
* Revert offset mode change
* Revert fix for null/system request details checks for reindex purposes
* Fix bug and add test for SP Validating Interceptor (#3930)
* wip
* Fix uptests
* Fix index online test
* Fix SP validating interceptor logic
* Updating version to: 6.1.1 post release.
* fix compile error
* Deploy to sonatype (#3934)
* adding sonatype profile to checkstyle module
* adding sonatype profile to tinder module
* adding sonatype profile to base pom
* adding final deployToSonatype profile
* wip
* Revert version enum
* Updating version to: 6.1.1 post release.
* Add test, changelog, and implementation
* Add backport info
* Create failing test
* Implemented the fix, fixed existing unit tests
* added changelog
* added test case for no filter, exclude 1 patient
* wip
* Add backport info
* Add info of new version
* Updating version to: 6.1.2 post release.
* bump info and backport for 6.1.2
* Bump for hapi
* Implement bug fixes, add new tests (#4022)
* Implement bug fixes, add new tests
* tidy
* Tidy
* refactor for cleaning
* More tidying
* Lower logging
* Split into nested tests, rename, add todos
* Typo
* Code review
* add backport info
* Updating version to: 6.1.3 post release.
* Updating version to: 6.1.3 post release.
* removed duplicate mention of ver 6.1.3 in versionEnum
* backport pr 4101
* mdm message key (#4111)
* begin with failing test
* fixed 2 tests
* fix tests
* fix tests
* change log
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* backport 6.1.3 docs changes
* fixed typo on doc backport message
* fix test breaking
* Updating version to: 6.1.4 post release.
* wip
Co-authored-by: JasonRoberts-smile <85363818+JasonRoberts-smile@users.noreply.github.com>
Co-authored-by: Qingyixia <106992634+Qingyixia@users.noreply.github.com>
Co-authored-by: TipzCM <leif.stawnyczy@gmail.com>
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
Co-authored-by: Ken Stevens <khstevens@gmail.com>
Co-authored-by: Etienne Poirier <33007955+epeartree@users.noreply.github.com>
Co-authored-by: peartree <etienne.poirier@smilecdr.com>
Co-authored-by: kateryna-mironova <107507153+kateryna-mironova@users.noreply.github.com>
Co-authored-by: longma1 <32119004+longma1@users.noreply.github.com>
Co-authored-by: Long Ma <long@smilecdr.com>
Co-authored-by: jdar8 <69840459+jdar8@users.noreply.github.com>
Co-authored-by: Ken Stevens <ken@smilecdr.com>
Co-authored-by: markiantorno <markiantorno@gmail.com>
Co-authored-by: Steven Li <steven@smilecdr.com>
* pin okio-jvm for kotlin vuln (#4216)
* Fix UrlUtil.unescape() by not escaping "+" to " " if this is an "application/..." _outputFormat. (#4220)
* First commit: Failing unit test and a TODO with a vague idea of where the bug happens.
* Don't escape "+" in a URL GET parameter if it starts with "application".
* Remove unnecessary TODO.
* Add changelog.
* Code review feedback on naming. Also, make logic more robust by putting plus and should escape boolean && in parens.
* Ks 20221031 migration lock (#4224)
* started design
* complete with tests
* changelog
* cleanup
* tyop
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* 4207-getpagesoffset-set-to-total-number-of-resources-results-in-inconsistent-amount-of-entries-when-requests-are-sent-consecutively (#4209)
* Added test
* Added solution
* Changelog
* Changes made based on comments
* Fix bug with MDM submit
* fix
* Version bump
* 4234 consent in conjunction with versionedapiconverterinterceptor fails (#4236)
* Add constant for interceptor
* add test, changelog
* Allow Batch2 transition from ERRORED to COMPLETE (#4242)
* Allow Batch2 transition from ERRORED to COMPLETE
* Add changelog
* Test fix
Co-authored-by: James Agnew <james@jamess-mbp.lan>
* 3685 When bulk exporting, if no resource type param is provided, defa… (#4233)
* 3685 When bulk exporting, if no resource type param is provided, default to all registered types.
* Update test case.
* Cleaned up changelog.
* Added test case for multiple resource types.
* Added failing test case for not returning Binary resource.
* Refactor solution.
Co-authored-by: kylejule <kyle.jule@smilecdr.com>
* Add next version
* bulk export permanently reusing cached results (#4249)
* Add test, fix bug, add changelog
* minor refactor
* Fix broken test
* Smile 4892 DocumentReference Attachment url (#4237)
* failing test
* fix
* increase test Attachment url size to new max
* decrease limit to 500
* ci fix
Co-authored-by: nathaniel.doef <nathaniel.doef@smilecdr.com>
* Overlapping SearchParameter with the same code and base are not allowed (#4253)
* Overlapping SearchParameter with the same code and base are not allowed
* Fix existing tests according to changes
* Cleanup dead code and remove related tests
* Version Bump
* ignore misfires in quartz
* Allowing Failures On Index Drops (#4272)
* Allowing failure on index drops.
* Adding changeLog
* Modification to changelog following code review.
Co-authored-by: peartree <etienne.poirier@smilecdr.com>
* Revert "ignore misfires in quartz"
This reverts commit 15c74a46bc.
* Ignore misfires in quartz (#4273)
* Reindex Behaviour Issues (#4261)
* fixmes for ND
* address FIXME comments
* fix tests
* increase max retries
* fix resource id chunking logic
* fix test
* add modular patient
* change log
* version bump
Co-authored-by: Ken Stevens <ken@smilecdr.com>
Co-authored-by: nathaniel.doef <nathaniel.doef@smilecdr.com>
* Set official Version
* license
* Fix up numbers
* Fix up numbers
* Update numbers
* wip
* fix numbers
* Fix test:
* Fix more tests
* TEMP FIX FOR BUILD
* wip
* Updating version to: 6.2.1 post release.
* Add a whack of logging
* wip
* add implementation
* wip and test
* wip
* last-second-fetch
* expose useful method
* remove 10000 limit
* Strip some logging
* Fix up logging
* Unpublicize method
* Fix version
* Make minor changes
* once again on 6.2.1
* re-add version enum
* add folder
* fix test
* DIsable busted test
* Disable more broken tests
* Only submit queued chunks
* Quiet log
* Fix up checkstyle
* log to console
* Remove double import
* Version bump
* licenses
* Fix up version
* fix build
* wip
* wip
* Fix up search expansion to use new behaviour of idhelper service
* Fix up MDM Search Expansion
Co-authored-by: jmarchionatto <60409882+jmarchionatto@users.noreply.github.com>
Co-authored-by: juan.marchionatto <juan.marchionatto@smilecdr.com>
Co-authored-by: Ken Stevens <khstevens@gmail.com>
Co-authored-by: Ken Stevens <ken@smilecdr.com>
Co-authored-by: JasonRoberts-smile <85363818+JasonRoberts-smile@users.noreply.github.com>
Co-authored-by: Qingyixia <106992634+Qingyixia@users.noreply.github.com>
Co-authored-by: TipzCM <leif.stawnyczy@gmail.com>
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
Co-authored-by: Etienne Poirier <33007955+epeartree@users.noreply.github.com>
Co-authored-by: peartree <etienne.poirier@smilecdr.com>
Co-authored-by: kateryna-mironova <107507153+kateryna-mironova@users.noreply.github.com>
Co-authored-by: longma1 <32119004+longma1@users.noreply.github.com>
Co-authored-by: Long Ma <long@smilecdr.com>
Co-authored-by: jdar8 <69840459+jdar8@users.noreply.github.com>
Co-authored-by: markiantorno <markiantorno@gmail.com>
Co-authored-by: Steven Li <steven@smilecdr.com>
Co-authored-by: Luke deGruchy <luke.degruchy@smilecdr.com>
Co-authored-by: karneet1212 <112980019+karneet1212@users.noreply.github.com>
Co-authored-by: James Agnew <jamesagnew@gmail.com>
Co-authored-by: James Agnew <james@jamess-mbp.lan>
Co-authored-by: KGJ-software <39975592+KGJ-software@users.noreply.github.com>
Co-authored-by: kylejule <kyle.jule@smilecdr.com>
Co-authored-by: Nathan Doef <n.doef@protonmail.com>
Co-authored-by: nathaniel.doef <nathaniel.doef@smilecdr.com>
* started converting System.setProperty to HapiSystem
* added a couple more. renamed class
* all the setProperty calls done
* finished System.getProperty()
* Split HapiSystemProperties into HapiSystemProperties and HapiTestSystemProperties
* Javadoc
* Javadoc
* review feedback
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* Extracting a Cache interface and building service loaders for Caffeine and Guava
* Fix estimated size interface
* Use LoadingCache when needed.
* Removing Caffeine from dependency lists.
* Adding hapi-fhir-cache-caffeine as a test dependency
* Putting caching solutions in a single module.
* Fixing the spacing
* Standardizing the use of TimeUnits
* Making a new module to simplify the switch of the cache library in tests.
* Making sure the Guava design matches the behavior of Caffeine.
* Making sure the Cache structure also does not throw InvalidCacheLoading exception to match the LoadingCache.
* Renaming module names for the caching group.
* Better error handing that informs devs what to do.
* Improving documentation
* Typo
* Matching error message design with Caffeine.
* Matching the behavior of Caffeine with Guava
* Final adjustments for the test dependencies on the cache modules.
* Fixing relative pom path.
* Adding caffeine as a testing requirement for the new modules.
* Add changelog and set JPA server to use caffeine cache
* POM fixes
* Build fix
* Buid fix
* Fixes
* Address review comment
* One more cache
* Move changelog to next release
* Update pom versions
* Build fix
* Build fixes
* Build fix
* Try to get build working
* Experiment with failing build
* Rever change
* Fix POM version
* Build fix
* Build fix
* Add Msg.code to new exceptions
Co-authored-by: Vitor Pamplona <vitor@vitorpamplona.com>
* POST release deferred cleanup
* Fixes
* One more test fix
* Test fixes
* Test fixes
* Test cleanup
* Test fixes
* Fixes
* ValueSet cleanup
* Test fix
* Test fixes
* Fixes
* Test fixes
* Fixed
* Test fixes
* Test fixes
* Test fixes
* Test fixes
* Test fixc
* Build fix
* Fix merge artifact
* Build fix
* Work on tests
* Test fixes
* Work
* Fixes
* Changelog fix
* Add changelog
* Test fix
* Test fixes
* Fixes
* Test fixes
* Test fixes
* Test fixes
* Test fix
* Tests
* Bumps
* Fixes
* Add errorprone
* Drop bz2 bins
* POM fix
* Build fix
* Update
* Test fix
Co-authored-by: James Agnew <james@jamess-mbp.lan>
* jm wrong bundle entry url (#4213)
* Bug test
* here you go
* Generate relative URIs for bundle entry.request.url, as specified
* Point jira issue in changelog
* Adjust tests to fixes
Co-authored-by: juan.marchionatto <juan.marchionatto@smilecdr.com>
Co-authored-by: Tadgh <garygrantgraham@gmail.com>
* improved logging (#4217)
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* Rel 6 1 3 mergeback (#4215)
* Bump for CVE (#3856)
* Bump for CVE
* Bump spring-data version
* Fix compile
* Cut over to spring bom
* Bump to RC1
* remove RC
* do not contrain reindex for common SP updates (#3876)
* only fast-track jobs with exactly one chunk (#3879)
* Fix illegalstateexception when an exception is thrown during stream response (#3882)
* Finish up changelog, minor refactor
* reset buffer only
* Hack for some replacements
* Failure handling
* wip
* Fixed the issue (#3845)
* Fixed the issue
* Changelog modification
* Changelog modification
* Implemented seventh character extended code and the corresponding dis… (#3709)
* Implemented seventh character extended code and the corresponding display
* Modifications
* Changes on previous test according to modifications made in ICD10-CM XML file
* Subscription sending delete events being skipped (#3888)
* fixed bug and added test
* refactor
* Update for CVE (#3895)
* updated pointcuts to work as intended (#3903)
* updated pointcuts to work as intended
* added changelog
* review fixes
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
* 3904 during $delete expunge job hibernate search indexed documents are left orphaned (#3905)
* Add test and implementation
* Add changelog
* 3899 code in limits (#3901)
* Add implementation, changelog, test
* Update hapi-fhir-jpaserver-test-utilities/src/test/java/ca/uhn/fhir/jpa/provider/r4/ResourceProviderR4Test.java
Co-authored-by: Ken Stevens <khstevens@gmail.com>
Co-authored-by: Ken Stevens <khstevens@gmail.com>
* 3884 overlapping searchparameter undetected rel 6 1 (#3909)
* Applying all changes from previous dev branch to current one pointing to rel_6_1
* Fixing merge conflict related to Msg.code value.
* Fixing Msg.code value.
* Making checkstyle happy.
* Making sure that all tests are passing.
* Passing all tests after fixing Msg.code
* Passing all tests.
Co-authored-by: peartree <etienne.poirier@smilecdr.com>
* 3745 - fixed NPE for bundle with duplicate conditional create resourc… (#3746)
* 3745 - fixed NPE for bundle with duplicate conditional create resources and a conditional delete
* created unit test for skip of delete operation while processing duplicating create entries
* moved unit test to FhirSystemDaoR4Test
* 3379 mdm fixes (#3906)
* added MdmLinkCreateSvcimplTest
* fixed creating mdm-link not setting the resource type correctly
* fixed a bug where ResourcePersistenceId was being duplicated instead of passed on
* Update hapi-fhir-jpaserver-mdm/src/test/java/ca/uhn/fhir/jpa/mdm/svc/MdmLinkCreateSvcImplTest.java
Change order of tests such that assertEquals takes expected value then actual value
Co-authored-by: jdar8 <69840459+jdar8@users.noreply.github.com>
* added changelog, also changed a setup function in test to beforeeach
Co-authored-by: Long Ma <long@smilecdr.com>
Co-authored-by: jdar8 <69840459+jdar8@users.noreply.github.com>
* Fix to the issue (#3855)
* Fix to the issue
* Progress
* fixed the issue
* Addressing suggestions
* add response status code to MethodOutcome
* Addressing suggestions
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* Fix for caching appearing broken in batch2 for bulkexport jobs (#3912)
* Respect caching in bullk export, fix bug with completed date on empty jobs
* add changelog
* Add impl
* Add breaking test
* Complete failing test
* more broken tests
* Fix more tests'
* Fix paging bug
* Fix another brittle test
* 3915 do not collapse rules with filters (#3916)
* do not attempt to merge compartment permissions with filters
* changelog
* Rename to IT for concurrency problems
Co-authored-by: Tadgh <garygrantgraham@gmail.com>
* Version bump
* fix $mdm-submit output (#3917)
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* Gl3407 bundle offset size (#3918)
* begin with failing test
* fixed
* change log
* rollback default count change and corresponding comments
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* Offset interceptor now only works for external calls
* Initialize some beans (esp interceptors) later in the boot process so they don't slow down startup.
* do not reindex searchparam jobs on startup
* Fix oracle non-enterprise attempting online index add (#3925)
* 3922 delete expunge large dataset (#3923)
* lower batchsize of delete requests so that we do not get sql exceptions
* blah
* fix test
* updated tests to not fail
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
* add index
* Fix up colun grab
* Revert offset mode change
* Revert fix for null/system request details checks for reindex purposes
* Fix bug and add test for SP Validating Interceptor (#3930)
* wip
* Fix uptests
* Fix index online test
* Fix SP validating interceptor logic
* Updating version to: 6.1.1 post release.
* fix compile error
* Deploy to sonatype (#3934)
* adding sonatype profile to checkstyle module
* adding sonatype profile to tinder module
* adding sonatype profile to base pom
* adding final deployToSonatype profile
* wip
* Revert version enum
* Updating version to: 6.1.1 post release.
* Add test, changelog, and implementation
* Add backport info
* Create failing test
* Implemented the fix, fixed existing unit tests
* added changelog
* added test case for no filter, exclude 1 patient
* wip
* Add backport info
* Add info of new version
* Updating version to: 6.1.2 post release.
* bump info and backport for 6.1.2
* Bump for hapi
* Implement bug fixes, add new tests (#4022)
* Implement bug fixes, add new tests
* tidy
* Tidy
* refactor for cleaning
* More tidying
* Lower logging
* Split into nested tests, rename, add todos
* Typo
* Code review
* add backport info
* Updating version to: 6.1.3 post release.
* Updating version to: 6.1.3 post release.
* removed duplicate mention of ver 6.1.3 in versionEnum
* backport pr 4101
* mdm message key (#4111)
* begin with failing test
* fixed 2 tests
* fix tests
* fix tests
* change log
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* backport 6.1.3 docs changes
* fixed typo on doc backport message
* fix test breaking
* Updating version to: 6.1.4 post release.
* wip
Co-authored-by: JasonRoberts-smile <85363818+JasonRoberts-smile@users.noreply.github.com>
Co-authored-by: Qingyixia <106992634+Qingyixia@users.noreply.github.com>
Co-authored-by: TipzCM <leif.stawnyczy@gmail.com>
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
Co-authored-by: Ken Stevens <khstevens@gmail.com>
Co-authored-by: Etienne Poirier <33007955+epeartree@users.noreply.github.com>
Co-authored-by: peartree <etienne.poirier@smilecdr.com>
Co-authored-by: kateryna-mironova <107507153+kateryna-mironova@users.noreply.github.com>
Co-authored-by: longma1 <32119004+longma1@users.noreply.github.com>
Co-authored-by: Long Ma <long@smilecdr.com>
Co-authored-by: jdar8 <69840459+jdar8@users.noreply.github.com>
Co-authored-by: Ken Stevens <ken@smilecdr.com>
Co-authored-by: markiantorno <markiantorno@gmail.com>
Co-authored-by: Steven Li <steven@smilecdr.com>
* pin okio-jvm for kotlin vuln (#4216)
* Fix UrlUtil.unescape() by not escaping "+" to " " if this is an "application/..." _outputFormat. (#4220)
* First commit: Failing unit test and a TODO with a vague idea of where the bug happens.
* Don't escape "+" in a URL GET parameter if it starts with "application".
* Remove unnecessary TODO.
* Add changelog.
* Code review feedback on naming. Also, make logic more robust by putting plus and should escape boolean && in parens.
* Ks 20221031 migration lock (#4224)
* started design
* complete with tests
* changelog
* cleanup
* tyop
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* 4207-getpagesoffset-set-to-total-number-of-resources-results-in-inconsistent-amount-of-entries-when-requests-are-sent-consecutively (#4209)
* Added test
* Added solution
* Changelog
* Changes made based on comments
* Fix bug with MDM submit
* fix
* Version bump
* 4234 consent in conjunction with versionedapiconverterinterceptor fails (#4236)
* Add constant for interceptor
* add test, changelog
* Allow Batch2 transition from ERRORED to COMPLETE (#4242)
* Allow Batch2 transition from ERRORED to COMPLETE
* Add changelog
* Test fix
Co-authored-by: James Agnew <james@jamess-mbp.lan>
* 3685 When bulk exporting, if no resource type param is provided, defa… (#4233)
* 3685 When bulk exporting, if no resource type param is provided, default to all registered types.
* Update test case.
* Cleaned up changelog.
* Added test case for multiple resource types.
* Added failing test case for not returning Binary resource.
* Refactor solution.
Co-authored-by: kylejule <kyle.jule@smilecdr.com>
* Add next version
* bulk export permanently reusing cached results (#4249)
* Add test, fix bug, add changelog
* minor refactor
* Fix
* Bump HAPI version
* Remove jetbrains
* Fix broken test
Co-authored-by: jmarchionatto <60409882+jmarchionatto@users.noreply.github.com>
Co-authored-by: juan.marchionatto <juan.marchionatto@smilecdr.com>
Co-authored-by: Ken Stevens <khstevens@gmail.com>
Co-authored-by: Ken Stevens <ken@smilecdr.com>
Co-authored-by: JasonRoberts-smile <85363818+JasonRoberts-smile@users.noreply.github.com>
Co-authored-by: Qingyixia <106992634+Qingyixia@users.noreply.github.com>
Co-authored-by: TipzCM <leif.stawnyczy@gmail.com>
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
Co-authored-by: Etienne Poirier <33007955+epeartree@users.noreply.github.com>
Co-authored-by: peartree <etienne.poirier@smilecdr.com>
Co-authored-by: kateryna-mironova <107507153+kateryna-mironova@users.noreply.github.com>
Co-authored-by: longma1 <32119004+longma1@users.noreply.github.com>
Co-authored-by: Long Ma <long@smilecdr.com>
Co-authored-by: jdar8 <69840459+jdar8@users.noreply.github.com>
Co-authored-by: markiantorno <markiantorno@gmail.com>
Co-authored-by: Steven Li <steven@smilecdr.com>
Co-authored-by: Luke deGruchy <luke.degruchy@smilecdr.com>
Co-authored-by: karneet1212 <112980019+karneet1212@users.noreply.github.com>
Co-authored-by: James Agnew <jamesagnew@gmail.com>
Co-authored-by: James Agnew <james@jamess-mbp.lan>
Co-authored-by: KGJ-software <39975592+KGJ-software@users.noreply.github.com>
Co-authored-by: kylejule <kyle.jule@smilecdr.com>
* Add r4b stuff
* Work on R4B
* Core version bump
* Revert some changes
* Add R4B
* Docs
* Test fixes
* Work on R4B
* Tests passgin
* Add config
* Work on merging
* Work
* Work
* Work
* Test fix
* Fixes
* Test fixes
* Test fix
* Work
* Work
* Fixes
* Test fixes
* Fixes
* Test fix
* Test fix
* Test fix
* Version bump
* Test fix
* Test fix
* ompile fixes
* Fix
* Resolve build warnings
* Updates
* Test fixes
* Fix docs
* 3052 Changed IBinaryStorageSvc MaximumBinarySize from int to long.
* 3052 Added changelog
* 3052 Bumped version
* 3052 Remove mysterious +1 on maximum binary size causing overflow.
* Bumping version to 6.2.0-PRE16-SNAPSHOT
* Adding + 1L as original implementation.
* Getting all tests to pass dealing with + 1L.
* Getting all tests to pass dealing with + 1L.
* Adding migration definition and removing unnecessary comment.
* Preventing register overflow when setting maxBinaryStorage.
* Mering relevant test.
* Fixing typo in migration script
Co-authored-by: kylejule <kyle.jule@smilecdr.com>
Co-authored-by: peartree <etienne.poirier@smilecdr.com>
* Standardize on one Transactional annotation
* Add changelog
* Disable checkstyle rule
* Fix up transactions
* Test fixes
* Test cleanup
* License headers
* One more dep bump
* Resolve commit issue
* Test fixes
* Test fix
* Dep bump
* Fix
* Fix test
* Version bump
* Test fixes
* added attribute to Operation annotation
* add find operation id
* update readOperationDefinition method
* add example to canonicalUrl
* adding more examples
* Add unit tests and supporting classes from gitlab issue.
* Commit with changes thus far to be reviewed. Namely, add savepoint capabilities to HapiTransactionService, inject HapiTransactionService into CascadingDeleteInterceptor, add savepoint capabilities to the TransactionDetails, and catch an Exception in BaseHapiFhirResourceDao.delete() then rollback to the checkpoint.
* Fix compile error.
* hapi transaction service test
* hapi transaction service test
* hapi transaction service test
* First draft of RetryTemplate and flush() logic. Try unit testing with PointcutLatch.
* hapi transaction service test
* Latest changes including moving RetryTemplate, cleaning up unit tests.
* First attempt at correct design. Fix compile errors.
* Add failed rollback savepoint test.
* fix propogation
* interesting test failure in SafeDeleterTest
* Latest code
* move delete
* test passing
* all tests pass
* yay we're done just cleanup
* First round of cleanup: Get rid of all exploratory logging, remove unneeded dependencies, move creation of RetryTemplate to SafeDeleter.
* More cleanup. Add changelog.
* Bump to 6.2.0-PRE13-SNAPSHOT.
* Code review feedback: Refactor SafeDeleter to a service and bean. Add comments.
* Code review feedback: Comments on unit test assertions.
* Code review feedback: Rename SafeDeleterSvc to ThreadSafeResourceDeleterSvc. Add javadoc. Add logger to DelayListener. Remove useless commented out code.
* Fix unit test failure in CascadingDeleteInterceptorTest.
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* removed flyway, started coding persistence
* started wiring up new dao service
* replace jpa with sqlbuilder
* down to 16 failed tests
* remove outOfOrder test. We no longer support validating order.
* Removed noFlyway mode. It is no longer a thing.
* merge migrator
* down to 1 failing test
* cleanup
* removed unused noflyway cli arguments
* cleanup
* cleanup
* cleanup
* cleanup
* create MigrationTaskList to replace the List<BaseTask> that gets passed around a lot. This allows us to add a bunch of behaviour to that as a first-order thing
* fix test
* fix test
* improve migration table detection to use the catalogue
* Msg.code()
* cleanup
* save version in same format as flyway
* cleanup
* add migration result to migration result class
* failed migrations stay in the table and don't really affect anything.
* change log
* docs
* ugh Flyway requires lower-case column names
* integration test fixes
* log
* fix oracle issue
* lowercase tablenames for postgres. fussy fussy!
* Revert "lowercase tablenames for postgres. fussy fussy!"
This reverts commit 92c9cb263b.
* revert to capital table names. surround table name by quotes for Postgres.
* added log message before executing find all query
* changed log message from info to debug
* javadoc
* pom cleanup
* review feedback
* Update hapi-fhir-sql-migrate/src/main/java/ca/uhn/fhir/jpa/migrate/MigrationTaskList.java
Co-authored-by: michaelabuckley <michaelabuckley@gmail.com>
* review feedback
* review feedback. Use prepared statement.
* Change installedOn insert from timestamp to date
* Change installedOn column type from timestamp to date
* bump hapi version
* fix poms
* fix poms and cdr compile
* add exclusions to clean up build
Co-authored-by: Ken Stevens <ken@smilecdr.com>
Co-authored-by: michaelabuckley <michaelabuckley@gmail.com>
* add failing test
* Fix history search bug and add tests for two more scenarios
* Fix history search bug and add tests for two more scenarios
* - added failing test condition
* Fix history search bug and add tests for two more scenarios
* Fix build test failures
* Fix build test failures
* Add extra verifications for scenarios of _since
* Refactor dao.history interface to add overload method and shall come back to remove old method once cdr is refactored.
* Update with new hapi interface
* Add depreciate comment
* Add depreciate comment
* Version bump to mvn 6.2.0-PRE11-SNAPSHOT
Co-authored-by: nathaniel.doef <nathaniel.doef@smilecdr.com>
* remove spring batch
it compiles
expect test failures
* fix test transaction manager bean name (wow that was quite the hunt the wumpus!)
* fix test and fix build
* fix test and fix build
* fix test
* remove spring batch schema initialization
* bump hapi version
* fix schema migrator
* bump to PRE-10
* merge master
* change logs
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* added failing tests
* added include to bulk export processor, added support for different resource types in bulk export fetch id step
* added changelog
* fixed duplication issue, and added null check
Co-authored-by: Steven Li <steven@smilecdr.com>
* Refactored test helper method to be more generic, added new failing test for feature, and changed BulkDataExportOptions to fix compile error
* added field to all objects needed in the bulk export pipeline for adding patient id, added new operation for the feature
* added changelog
* added support for patient parameter to patient export, changed patient id to a list to match the requirements for the patient parameter, added test for multiple id patient export
* refactored methods, added new changes to changelog
* code review changes
* fix test error
Co-authored-by: Steven Li <steven@smilecdr.com>
* check for valid resource type
* add test and refactor test class
* refactor auto get method name
* introduce parameter object to patient everything methods
* introduce parameter object to patient everything methods
* change record to class
* add hapi error code
* refactor
* refactor
* change code num
* refactor getmethodname to util method
* add docs and rename fields to conform to fhir standard
* typo
* version bump
* resolving merge conflicts.
* Bumping version
* Bumping version to 6.2.0-PRE5-SNAPSHOT
* Encapsulating parameters in a PatientEverythingParameters object.
Co-authored-by: Justin_Dar <justin.dar@smilecdr.com>
Co-authored-by: peartree <etienne.poirier@smilecdr.com>
* consolidated Batch2Helper
check status in assert before running maintenance
ignore illegal job instance state transition
* Fix mock tests
* rename intermittent to IT
* extra logging
* into to debug
* review feedback
* added more logging
* removed fasttracking. replaced with support for triggering a maintenance run
* fixed tests
* fixed tests
* add asserts
* licenses
* snakeyaml cve version bump
* data migration
* merge origin/master
* merge origin/master
* fix test (support triggering jobs when scheduling is disabled)
* add counter to abort potential infinite loop after 100000 calls
* compile error
* move multipartition mdm tests out to a separate IT
update mongo job instance creation with new logic
* fix race condition
* back out infinite loop circuit breaker. it breaks terminology tests that depend on this loop running > 100000 times.
* fix test (triggered job key was missing group)
* revert saveAllDeferred
* Almost finished getting JpaPersistenceR4IT to pass
* testBulkExportDeleteForOnGoingJob still not passing
* testBulkExportDeleteForOnGoingJob still not passing
* Removed method `fetchInstanceAndMarkInProgress`. It was clobbering other state transitions like CANCELLED.
* undo rename of cancelled to cancelRequested. Thymeleaf depends on the old name
* ExpandResourcesStep requires a synchronous search
* Tests are passing but man testBulkExportDeleteForOnGoingJob is a flakey test
* fix test
* fix test
* change log
* allow ERRORED -> FAILED state transition
* add a timeout to saveAllDeferred()
* improve error message on timeout message
* fix tests
* added more logging
* added more logging
* fix semaphore issue
* Msg.code
* fix test
* javadoc
* switch all batch loggers to batch troubleshooting log
* add unit test, improve logging
* move TimeoutManager to its own class. Add tests.
* fix tests
* comment cleanup
* test race condition
* review feedback
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* Added failing test, and the methods that are necessary to not break the build
* Implemented solution to cancel jobs via delete request for poll status
* change log added
* change log name change to pass test
* Changed implementation to work with existing infrastructure
* code review changes
Co-authored-by: Steven Li <steven@smilecdr.com>
This PR changes the way HAPI is built by Azure pipelines. Instead of a FIFO queue for all tests in the project, the entire project is quickly built and cached without testing, then the individual modules are built and tested in separate jobs which can be run in parallel from each other. Each of these jobs then uploads the test coverage for that module as a build artifact. Finally, a last stage downloads all the archived tests results and aggregates them using jacoco so they can be uploaded to codecov.
This has two key benefits:
If there is a failing test because of an intermittent, the individual failing module can be re-run instead of having to re-run the whole project build.
The build time is decreased substantially (90min -> 45min).
This is the first run at this, I will be iterating to further reduce build times going forward.