* fix handling of common search parameters
* Revert "fix handling of common search parameters"
This reverts commit 89c45eebdc.
* Fix implementation, add test (#3378)
* Fix implementation, add test
* Tighten test
* Rip out dead modules
* Add changelog
* Jr 20220210 handle common search params in contained searches (#3377)
* fix handling of common search parameters
* add support for reference search parameters with multiple paths
* Issue 3357
* Version bump
* Fixed null pointer exception for re-loading subscription on cdr restart and when there's no partition id in the request, and added tests
* added changelogs for this fix
* Fix broken changelog file
* Can't specify specific resource type permissions for bulk export (#3376)
* deny user from exporting without perms
* add unit tests
* add changelog
Co-authored-by: olivia-you <olivia.you@smilecdr.com>
* Make migration donothing as it was added in error
* Remove ehcache
* Add version.yaml:
* Add to sources/javadocs for dist
* Fix typo
* fix up pom
* wip test removing checkstyle plugin from deployable pom
* remove test pom changes, instead just dont deploy to sonatype
* typo
* Version bump
* Add implementation, testing, and changelog
* Add backport info, make aware of 6_0_0
* add jira ref
* Fix test
* Add versionenum
* Remove dups
* Remove unnecessary stuff
Co-authored-by: Jason Roberts <jason.roberts@smilecdr.com>
Co-authored-by: JasonRoberts-smile <85363818+JasonRoberts-smile@users.noreply.github.com>
Co-authored-by: Mark Iantorno <markiantorno@gmail.com>
Co-authored-by: Steven Li <steven@smilecdr.com>
Co-authored-by: Olivia You <46392181+oliviayou@users.noreply.github.com>
Co-authored-by: olivia-you <olivia.you@smilecdr.com>
* Enable search narrowing on large ValueSets
* ValueSet improvements
* Work on narrowing
* Work on narrowing
* Work on narrowing
* Work on narrowing
* Add test
* Work on narrowing interceptor
* Work on narrowing
* License headers
* Refactor code narrowing
* Add docs
* Version bump
* Test fix
* Test fixes
* Build fix
* Fixes
* Version bump
* Test fix
* License header updates
* Build fix
* Test fixes
* Test fix
* Test fix
* Docs fix
* Test fix
* Test fix
* Resolve fixme
* Bump
* Force a CI build
* Make CI happen again
* Added log to the create() and valiForUpload() methods in the PackageInstallerSvcImpl class
* Added helper methods to extract URL from SearchParameter.Tested and fixed log entries.
* Changelog entry
* Update 3384-Package-Install-added-logs-for-resources-validation.yaml
Co-authored-by: Kai Liu <kliu@Kais-MacBook-Pro.local>
* Work on new batch framework
* Work on new batch framework
* Work on new batch framework
* Work on batch
* Compile working
* Work on bulk import
* Adjust import
* Work
* Work on batch
* Bump version
* WOrk on new batch processes
* Work on bath
* Bump to PRE4
* Build fixes
* CLeanup
* Small tweak
* Add exception code
* Test fixes
* Test fixes
* Test fix
* Additional synchronization
* Add license headers
* Test fixes
* Test fixes
* Add changelogs
* Address PG
* Test fix
* Test fix
* Test fixes
* Review notes
* Work on tests
* Test fixes
* Test fix
* Work on tests
* Tets fix
* Test fixes
* Test fixes
* Add missing exception codes
* Test fix
* Test fixes
* More test fixing
* License headers
* Test fix
* Add new test logging
* Work on tests
* Test fixes
* Test fix
* Resolve fixme
* Try to avoid test failure
* Add import command
* Work on storage
* Fix error codes
* Fixes
* License header
* Build fix
* Build fixes
* Fix dep
* Refactor ValueSet expansion code to simplify property filtering by using new Hibernate search V6 nested classes capabilities; use generic hibernate search queries where possible (mostly everywhere but regex queries) and add R4 integration tests for both elastic and lucene.
* Refactor ValueSet expansion code to simplify property filtering by using new Hibernate search V6 nested classes capabilities; use generic hibernate search queries where possible (mostly everywhere but regex queries) and add R4 integration tests for both elastic and lucene.
* Add comment for trick
* Add codes to exception messages
* Add test specific for the fix
* Move changelog to current release. Add upgrade notice.
* Improve fail-fast method
* Update upgrade instructions
* Try luck with new exception codes
* Update hapi-fhir-storage/src/test/java/ca/uhn/fhir/jpa/search/ElasticsearchNestedQueryBuilderUtilTest.java
Add missed quote
Co-authored-by: michaelabuckley <michael.buckley@smilecdr.com>
Co-authored-by: juan.marchionatto <juan.marchionatto@smilecdr.com>
Co-authored-by: michaelabuckley <michael.buckley@smilecdr.com>
* Add FK index to avoid timeout when deleting large ValueSet
* Add exception to allow same name for index and FK
Co-authored-by: juan.marchionatto <juan.marchionatto@smilecdr.com>
* Start working on graphql Schema
* Start testing
* Work on introspection
* Work on introspection
* Use integers for date ordinals
* Add changelog
* GraphQL updates
* Ongoing wrk
* Cleanup
* Bump core lib
* Add changelog
* Clean up dependencies
* CLeanup
* Add missing message
* Test fix
* Change to force CI
* export rules are applied now
* add changelog and test
* add changelog
* Delete 2797-bulk-export-getting-incorrect-group-data.yml
* update test
* add test
Co-authored-by: olivia-you <olivia.you@smilecdr.com>
* fix handling of common search parameters
* Revert "fix handling of common search parameters"
This reverts commit 89c45eebdc.
* Fix implementation, add test (#3378)
* Fix implementation, add test
* Tighten test
* Rip out dead modules
* Add changelog
* Jr 20220210 handle common search params in contained searches (#3377)
* fix handling of common search parameters
* add support for reference search parameters with multiple paths
* Issue 3357
* Version bump
* Fixed null pointer exception for re-loading subscription on cdr restart and when there's no partition id in the request, and added tests
* added changelogs for this fix
* Fix broken changelog file
* Can't specify specific resource type permissions for bulk export (#3376)
* deny user from exporting without perms
* add unit tests
* add changelog
Co-authored-by: olivia-you <olivia.you@smilecdr.com>
* Make migration donothing as it was added in error
* Remove ehcache
* Add version.yaml:
* Add to sources/javadocs for dist
* Fix typo
* fix up pom
* wip test removing checkstyle plugin from deployable pom
* remove test pom changes, instead just dont deploy to sonatype
* typo
* Remove ehcache
Co-authored-by: Jason Roberts <jason.roberts@smilecdr.com>
Co-authored-by: JasonRoberts-smile <85363818+JasonRoberts-smile@users.noreply.github.com>
Co-authored-by: Mark Iantorno <markiantorno@gmail.com>
Co-authored-by: Steven Li <steven@smilecdr.com>
Co-authored-by: Olivia You <46392181+oliviayou@users.noreply.github.com>
Co-authored-by: olivia-you <olivia.you@smilecdr.com>
* fix handling of common search parameters
* Revert "fix handling of common search parameters"
This reverts commit 89c45eebdc.
* Fix implementation, add test (#3378)
* Fix implementation, add test
* Tighten test
* Rip out dead modules
* Add changelog
Co-authored-by: Jason Roberts <jason.roberts@smilecdr.com>
* Fixed null pointer exception for re-loading subscription on cdr restart and when there's no partition id in the request, and added tests
* added changelogs for this fix
Co-authored-by: Steven Li <steven@smilecdr.com>
* feat: added support for package.zgz uri in the "file:/" format
* added changelog entry
* add error code to thrown message
Co-authored-by: Tadgh <garygrantgraham@gmail.com>
* Initial design of adding exception codes to exceptions
* Initial design of adding exception codes to exceptions
* change int module name to string
* add comment
* shorten message
* shorten message
* added checkstyle
* developing checker
* completed checkstyle plugin and unit test for it
* fix NPE
* fix checker so it ignores throws on exceptions that aren't new
* change parameter order in InvalidResponseException
* accept Msg.code() in any parameter since some exceptions like MessageException have the message string as the second parameter
* exclude generated files
* BIG COMMIT added error codes to all exception throws
* example test fix
* Modified tests such that the assert statements would better match the message responses.
* Modified additional tests such that the assert statements would better match the message responses.
* fix test
* merge master
* merge master
* Fourth commit of modified tests such that the assert statements would better match the message response
* Changes made to modify assert statements such that they match the new errors which now use error codes. Also changed ResourceNotFoundException to include error codes in its messages.
* Modified assert messages to better match new error codes
* Time Zone changes DRAFT. Certain tests pass in intellij and fail during mvn install
* Modified assert messages to better match new error codes
* Added comments for time zone fixes. Previous commit comment on time zone fixes was incorrect. By invaliding caches, all tests on both intellij and mvn install passed.
* Reverted changes on azure-pipelines.yml
* updated hapi-fhir version for checkstyle module
* changes to azure-pipelines.yml
* changes to azure-pipelines.yml
* change to pom.xml to include hapi-fhir-checkstyle in ALLMODULES
* changes to azure-piplines (these changes are to be reverted after testing)
* reverted changes to azure-piplines
* reverted change where hapi-fhir-checkstyle was added to pom.xml (hapi-fhir)
* Attempted fix on checkstyle build error
* modified azure-piplines.yml to change maven repository for checkstyle build
* Attempted fix on checkstyle build error
* checkstyle config location change for hapi-depoloyable-pom. (will be reverted if it does not work)
* attempted dependency add for hapi-depoloyable-pom. (will be reverted if it does not work)
* reverted changes for hapi-deployable-pom
* add javadoc
* update last code
* Attempted fix on checkstyle build error
* Finished adding in missing error codes to pass Checkstyle checks
* Test pipelining
* Fixing errors and bumping version (as suggested by Gary)
* Merge
* Fixing Checkstyle error
* Attempted fix for date error
* Add error code onto assert statement
* Add in a couple more error codes
* Fixing assert statements
* Bump to static version for dependency
* Adding error code to message
* Adding error codes to exceptions
* Adding error codes to exceptions
* Change to work with cdr branch
* Update to faulty error message
* Merge changes
* allow checkstyle pom to deploy
Co-authored-by: Ken Stevens <khstevens@gmail.com>
Co-authored-by: Simon Zuccherato <simon.zuccherato@smilecdr.com>
Co-authored-by: Predap <simon.zuccherato@gmail.com>
Co-authored-by: Predap <46201929+Predap@users.noreply.github.com>
Co-authored-by: Tadgh <garygrantgraham@gmail.com>
* 3156 fix race condition that results in multiple tags being created
* 3156 added changelog
* cleanup
* added smile jira ticket
* 3156 review fixes
* review fixes
* 3156 added an additional integratoin test
* cleanup
* review fix and master merge
* threadsafe stuff
* small change
* upping min threads for tests to pass
* changing test
* test check
* fix
* test testing
* one more update
* using threadpoolutil
* temporary measure
* git push
* all builds
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
* failing test
* failing test
* Fixes
* Updated note to self
* Improve pre-caching of resource IDs
* Work on tests
* Test fixes
* Add changelog
Co-authored-by: Ken Stevens <khstevens@gmail.com>
* added settings for cross-partition to Dao and Model config
* modified subscription validator to validate cross partition subscriptions
* modify subscription matcher to allow matching on all partitions when subscription is set to cross partition
* added cross partition to canonicalSubscription
* end of day commit, changed how we are checking if default partition in subscription validator
* fixed issue with i memory matching for cross partition subscriptions
* added test for parsing legacy CanonicalSubscription
* added changelog and doc changes
* addressed comments in pr
* added assertdoesnotthrow
* test fixes, added new mocks
* added check for if resource can have extension before checking for extensions
* removed unnecessary semicolon
Co-authored-by: Steven Li <steven@smilecdr.com>
Co-authored-by: Long Ma <long@smilecdr.com>
* Make RestfulClientFactory.myValidatedServerBaseUrls usage thread safe so capability validation request is sent only once per client-endpoint
* Can't use @GuardedBy for fields which are not always locked by annotation object
* Use same variable when checking and setting
Co-authored-by: juan.marchionatto <juan.marchionatto@smilecdr.com>
* base restructuring of query
* fix unit tests
* suppress unnecessary resource type parameter
* pass the resource type used to fetch the search param as part of the chain, so later we do not need to guess what it was
* add query structure tests
* changelog
* fix test failures
* got one of the branches wrong in the 3-reference case
* Added IT for Payload Search REST HOOK subscription, fixed issue with null pointer exception
* removed todo comment, added changelog
Co-authored-by: Steven Li <steven@smilecdr.com>
* 3283 delete will not return a 404 if resource is not found
* minor tweaks
* checking if tests fail due to asynchronicity
* 3283 added integration test
* cleanup
* review fixes
* changed id names
* cleanup
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
* 3274 throw if url is full url
* 3274 will throw on invalid urls
* 3274 fixing the tests
* 3274 cleanup
* anonymize the data
* review fixes
* 3274 fixed for backward compatibility
* added review fixes
* fixing tests
* some more test fixes
* test fixes
* 3274 fixing the check to only look for resource at begining
* 3274 fixed test
* test fixes
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
* Run intended job
* Add test ti validate right method is invoked by inner job
* Add changelog
* Make test fail with proper message instead of crash
Co-authored-by: juan.marchionatto <juan.marchionatto@smilecdr.com>
* Fix PatientIdPartitionInterceptor for case where patient ID has hashCode equal to Integer.MIN_VALUE
* Fix PatientIdPartitionInterceptor for case where patient ID has hashCode equal to Integer.MIN_VALUE
Co-authored-by: ianmarshall <ian@simpatico.ai>
* Bump a number of versions
* Fixes
* Work on version bump
* Bump
* Test fix
* More version bumps
* Build fixes
* Test fixes
* Fixes
* Fixes
* Test fix
* Bump jacoco
* Test fix
* Test fix
* Test fix
* Build fix
* Build fix
* Remove versioned H2
* Build fix
* Avoid memory issue in validation tests
* JDK bump
* Restore compile with errorprone
* Force coloured output
* Force jansi
* Try again to force jansi
* Fix for hardcoded date that just passed
* Fixes to JPA
* Improve changelog
* Work on failing test
* Test fix
* Compile fix
* One more version bump
* Test fixes
* Add flag in DaoConfig to enable storing resources in lucene index
* Update loadResourceByPid to use ElasticSearch for loading observation resource and test added to check it
* Added parsing to elastic search to parse inlined observation resources json to resource object
* 2521 will set subscriptionst hat cant be initialized to error state to prevent infinite retries
* 2521 add changelog
* cleanup
* fix issue in merge
* fix bad merge
* bad merge
* 2521 review fixes and test fixes
* 2521 review fixes
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
* Allow Subscription to be configured to send delete messages
* Add tests and implement MR suggestions
Co-authored-by: juan.marchionatto <juan.marchionatto@smilecdr.com>
* some fixmes to start
* Added some FIXMEs
* added RequestPartitionId to reosurceDelivryMessage and ResourceModifiedMessage
* ResourceDeliveryMessage and ResourceModifiedMessage tests
* fixed issue with test missing partitionHelperSvc mocked bean
* Added tests and implemented SubscriptionMatchingSubscriber for partition aware subscription
* modified implementation of partitionId in CanonicalSubscription
* Moved PartitionablePartitionId, and refactored all calls to getUserData(Constants.RESOURCE_PARTITION_ID) and setUserData(Constants.RESOURCE_PARTITION_ID)
* Revert "Moved PartitionablePartitionId, and refactored all calls to getUserData(Constants.RESOURCE_PARTITION_ID) and setUserData(Constants.RESOURCE_PARTITION_ID)"
This reverts commit fe40fb9733.
* Got added partitionId to subscriptions, added changes to make SubscriptionMatchingSubscriberTest work
* added SubscriptionTriggering test, also added partition support to subscriptionLoader
* Changed implementation for storing partition id of subscriptions from messages, refactored tests to new implementation
* added all subscription systemRequestDetails with all partition to subscription reader
* refactored a generic system request details with default all partition request
* Added test for dao subscriptions, fixes to get the test working
* added partition support for latest version delivery
* added doc changes and changelog for multitenancy subscription
* cleanup and added partitioned subscription manually trigger test
* fixed mocked subscriptionDao
* added package-info for subscription module
* some code review changes
* removed AllPartitionSystemRequestDetail, added new text for multitenant subscription
* renamed method for code review
* version bump to 5.7.0PRE7
Co-authored-by: Michael Buckley <michael.buckley@smilecdr.com>
Co-authored-by: Ken Stevens <khstevens@gmail.com>
Co-authored-by: Long Ma <long@smilecdr.com>
Co-authored-by: Steven Li <steven@smilecdr.com>
* try xml -> json
* Change from xml serialization to json serialization. Also fix a deadlock in how the validation cache is used.
* changelog
* back out logback
change
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/changelog/5_7_0/3236-change-validation-from-xml-to-java.yaml
Co-authored-by: Tadgh <tadgh@cs.toronto.edu>
Co-authored-by: Tadgh <tadgh@cs.toronto.edu>
* move mail config to mail service constructor
* update subscription email sender
* added license text
* [2669] bump HAPI version to 5.7.0-PRE6-SNAPSHOT
* add changelog
* First cut at multithreading bundle validation
* javadoc
* change test to a red-green test
* add daoconfig
* move bundle concurrency config from validationsupport to request validator
* Moved concurrent details from ValidationOptions to FhirValidator
* Remove bundleValidationThreadCount (it's set by creating an appropriate executor)
* validate threadpool prefixes
* FIXME cleanup
* reassign FIXMEs to JB
* only create the threadpool if it will be used
* Add the MdcTaskDectorator to all threadpools
* Add bundle path to concurrently validated bundle resource validation messages.
* Add test to check bundle entry path being added to validation messages
* Threaded validation of contained resources initial checkin
* FHIR validator refactored to maintain correct bundle path and async validation task
* Refactored to use validation complete invoke callback to support raw string resource or resource object
* switch from XML to JSON
* # Conflicts:
# hapi-fhir-base/src/main/java/ca/uhn/fhir/validation/FhirValidator.java
# hapi-fhir-validation/src/test/java/org/hl7/fhir/r4/validation/FhirInstanceValidatorR4Test.java
* Updated to use new HAPI-FHIR version
* merge 'validate_contains_change' into issue-3144-multi-threaded-bundle-validation
* Updated to use new HAPI-FHIR version
* Revert "Updated to use new HAPI-FHIR version"
This reverts commit 910b7f676b.
* Revert "merge 'validate_contains_change' into issue-3144-multi-threaded-bundle-validation"
This reverts commit c7d60fc3e6.
* Revert "Updated to use new HAPI-FHIR version"
This reverts commit aa8a7af455.
# Conflicts:
# hapi-fhir-validation/src/test/java/org/hl7/fhir/r4/validation/FhirInstanceValidatorR4Test.java
* Fix Test dependencies after reverting changes.
* merge 'validate_contains_change' to 2564-contained-resource-validation-flag
* Disable threadpool prefix name validate check.
* merge master
* fix thread regexp
* pre-review cleanup
* change log
* fix test
* revert to XML as default validation serialization
* fix test
* fix test
Co-authored-by: Jaison B <jaisonb@gmail.com>
* wip
* The updated changes to the validator that were pulled in from the core dependencies are not backwards compat. Need to bump HAPI version.
* pointing to stable core version
* review feedback
* Add changelog
Co-authored-by: markiantorno <miantorno@pop-os.localdomain>
* Synthea perf work
* Cleanup
* Work on performance
* Ongoing perf work
* More perf work
* Perf work
* Test fixes
* Updates
* Test fix
* Test fixes
* Clean up tests
* Test cleanup
* Cleanup
* Add test
* One more perf tweak
* Fixes
* Add changelog
* Add changelog
* License header update
* License header updates
* 3136 - Send validate-code requests to an Instance of IValidationSupport instead of directly to the DAO.
* 3136 - Added support for R4 validate-code calls to a Remote Terminology Server.
* Added more Unit Tests.
* Added NULL checks based on code analysis.
* Adding some cleanup code to the Unit Tests since some other unrelated Unit Tests were failing when running in an Azure Pipeline.
* Adding @Ignore to both of my Unit Test classes to try and see if this is the cause of other unrelated Unit Test failures in the Azure Pipeline.
* Commented out ALL CODE in my Unit Tests to see if this fixes the other Unit Tests.
* Added 1 Unit Tester called RemoteTerminologyServiceResourceProviderR4Test to see if it causes other Unit Test failures.
* Added a Unit Tester called ResourceProviderR4RemoteTerminologyTest with the code that creates a RemoteTerminologyServiceValidationSupport instance commented out for now, just to see if this allows all other Unit Tests to pass.
* Added a Unit test back in to verify how the RemoteTerminologyServiceValidationSupport works when inserted into the front of the IValidation chain. Lets see if this will mess up any other Unit Tests in the Azure Pipeline...
* Added an @AfterEach method to remove the RemoteTerminologyServiceValidationSupport instance from the ValidationSupportChain to see if it allows all the other Unit Tests to work as before.
* Added more Unit tests.
* Added more Unit Tests to increase code coverage.
* Added some NULL checks.
* Added a changelog for this feature add.
* Removed the decision logic in the REST APIs and also the isRemoteTerminologyServiceConfigured() method, and letting the ValidationSupportChain figure out how to perform the validate-code Operation.
* Removed a NULL check that was not needed.
* Reverting the previous change where I tried using the IValidationSupportChain for each and every incoming Operation request. Splitting the implementation between local and remote seems to be required at this time.
* Add indexes to foreign keys
* Add new version enum
* Add TermCodeSystem and TermCodeSystemVersion deletion job artifacts
* Add Propagation.NOT_SUPPORTED to allow starting jobs from transactional code
* New jobs artifacts
* Improve comments
* Restructure job configurations to avoid bean name collisions
* Restructure job configurations to avoid bean name collisions
* Use new offline deletion by job
* Test using multiple versions
* Retrieve only Pids
* Revert to master
* Maintain deferred functions synchronization as similar as possible to the way it was
* Bypass validations to allow calling an index same as a foreign key to make SchemaMigrationTest happy as H2 adds FK indexes automatically
* Adjust tests
* Add copyrights
* Add test
* Revert to delete CodeSystemVersions using deferred ITermDeferredStorageSvc
* Allow to wait for jobs tentatively
* Organize imports
* Fix tests
* Increase timeout to cover for possible additional heavy DB activity
* Add indexes to two remaining non-indexed foreign key fields to avoid much longer transactions which produce locks on heavy DB load
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/changelog/5_7_0/3108-terminology-large-code-system-deletion-performance.yaml
Co-authored-by: James Agnew <jamesagnew@gmail.com>
* Remove opening stars from logging messages
* Relax index name checking logic to allow for indexes on FK columns to be called same as the FKs, to make SchemaMigrationTest happy even when H2 adds indexes to FKs automatically.
* Use static array to enumerate platforms which doesn't add indexes to foreign keys automatically.
* Cleanup also job executions when performing test artifact cleanup
* Adjust to property name change
* Add ABANDONED status to the list of waited job statuses to avoid test failures due to wait timeouts
* Add also UNKNOWN status to the list of waited job statuses to avoid test failures due to wait timeouts
* Filter job executions to be stopped
* Set trace to debug test problem
* Add STOPPED status to the list of waited job statuses to avoid test failures due to wait timeouts
Co-authored-by: juan.marchionatto <juan.marchionatto@smilecdr.com>
Co-authored-by: James Agnew <jamesagnew@gmail.com>
* 3170 language portion of language code is case insensitive
* 3170 adding changelog
* 3170 house keeping
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
* Add check before mapping storage ID to resource ID in TransactionDetails.
* Add change log.
* Changed to instead prevent creation of ResourcePersistentId with null ID value.
* Changed to instead prevent ResourcePersistentId being created with null resource ID.
Co-authored-by: ianmarshall <ian@simpatico.ai>