* Force Verify tests
* fix ITs (#4809)
* fix RestHookTestR5IT
* fix intermittent
---------
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* Fix migrator error on Oracle (#4814)
* Fix Oracle SQL error
* Add changelog
* Update clinical reasoning version (#4816)
* Update clinical reasoning version
* Update version
* Update version
* Clean-up and more wireup of evaluationSettings
* Add changelog
---------
Co-authored-by: Jonathan Percival <jonathan.i.percival@gmail.com>
* Opening the care-gaps endpoint for GET. (#4823)
Co-authored-by: Chalma Maadaadi <chalma@alphora.com>
* added version to mdm golden resource tag (#4820)
Co-authored-by: Long Ma <long@smilecdr.com>
* Update the changelog for 4697 to be more descriptive (#4827)
* Update the changelog for 4697 to be more descriptive
* Futher tweaks of the changelog
* Fixes a bug with tags. (#4813)
* Test, fix
* Drop constraint, add migration
* Add changelog
* Fix userSelected null vs false
* Fix merge
* Fix up checkstyle whining
* One more failure
* Fix test
* wip
* changelog clarity
Co-authored-by: James Agnew <jamesagnew@gmail.com>
* change index
---------
Co-authored-by: Michael Buckley <michaelabuckley@gmail.com>
Co-authored-by: James Agnew <jamesagnew@gmail.com>
* fix migration issue (#4830)
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* Create correct version enum
* Remove superfluous migration
* fixing test (#4835)
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
---------
Co-authored-by: Ken Stevens <khstevens@gmail.com>
Co-authored-by: Ken Stevens <ken@smilecdr.com>
Co-authored-by: James Agnew <jamesagnew@gmail.com>
Co-authored-by: Brenin Rhodes <brenin@alphora.com>
Co-authored-by: Jonathan Percival <jonathan.i.percival@gmail.com>
Co-authored-by: chalmarm <44471040+chalmarm@users.noreply.github.com>
Co-authored-by: Chalma Maadaadi <chalma@alphora.com>
Co-authored-by: longma1 <32119004+longma1@users.noreply.github.com>
Co-authored-by: Long Ma <long@smilecdr.com>
Co-authored-by: Michael Buckley <michaelabuckley@gmail.com>
Co-authored-by: TipzCM <leif.stawnyczy@gmail.com>
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
* Start porting changes to master that were lost from the release branch.
* Add remainder of tag changes from release branch.
* Changelog changes.
* Fix schema migration.
* Remove duplicate lines.
* Update core to 6.0.1.
* Fixes for new core.
* Bump to snapshot 19 to mirror James' changes.
* Fix migration tasks.
* Fix some of the tests due to the core upgrade.
* Fix rest of tests.
Post review batch2 cleanup.
Review fixes and cleanup from #4647
Deleted methods in IJobPersistence unused in prod paths, and replaced their usage in tests.
Lots of docs.
Replace copy-on-write pattern in JobDefinitionRegistry with simple ConcurrentHashMap
Fixed bad mappings from job ERRORED state to external APIs. People think ERRORED is a failed state. ¯\_(ツ)_/¯
Added some spec tests for chunk purging
Deprecated ERRORED. For deleting in 6.8
Lots of plans for 6.8. Too risky for 6.6
* Failing test
* Add method to expunge collection of deleted resources
* Failing test passes
* Add changelog
* Version bump
* Forgot to commit change
* Update test
* Check type validity
* Fix broken tests
---------
Co-authored-by: David Chen <david.chen@smilecdr.com>
* Use java event names for work chunk transitions.
* Cherry-pick d5ebd1f667 from rel_6_4
Avoid fetching work-chunk data (#4622)
* add end time to reduction step (#4640)
* add end time to reduction step
* add changelog
---------
Co-authored-by: Long Ma <long@smilecdr.com>
(cherry picked from commit 37f5e59ffc)
* Cancel processing
Provide error message in cancelled jobs, and avoid transitions in final states.
* Apply tx boundary to starting job and first chunk.
* cleanup
* Apply tx boundary to work chunk processing
* Delete BatchWorkChunk
* Introduce events for job create, and chunk dequeue
* Apply tx boundary to chunk handler
* Move instance cancellation to database
* tx boundary around stats collection and completion
* tx boundary around stats collection and completion
* Extend tx boundary to error, fail, and cancel
* Move failure into status calc
* ERROR is not an "ended" state.
* Revert generics cleanup to avoid noise
* Avoid sending gated chunks twice.
* Make no-data path safer. Cleanup
* Fix mock test for step advance.
* Delete unsafe updateInstace() call
* Cleanup
* Changelog and notes
* Fix cancel boundary. Cleanups
* Cleanup
* Sort mongo chunks for stable paging.
Other cleanup
* Document error handling
* Cleanup
* Update hapi-fhir-jpaserver-test-utilities/src/main/java/ca/uhn/fhir/jpa/test/Batch2JobHelper.java
Co-authored-by: StevenXLi <stevenli_8118@hotmail.com>
---------
Co-authored-by: longma1 <32119004+longma1@users.noreply.github.com>
Co-authored-by: StevenXLi <stevenli_8118@hotmail.com>
* a solution for trying to avoid multi-thread issues for transaction bundle processing
* cleanup
* using retries
* mnor tweaks
* checking in
* changes
* updating changelog
* some minor tweaks
* cleanup
* flip if
---------
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* The Lenient error handler will throw exceptions when encode invalid extension containing value and nested extensions
* Addressing suggestions
* Minor changes
* Minor fix
* enabled test
* added explanations to disabled tests
* added explanations to disabled tests
* yay enabled another one
* yay enabled another one
* testEverythingWithLargeSet2 failing intermittently
* fix intermittent regression introduced by splitting test class
* test passes
* need to document
* updated documentation
* prereview cleanup
* change log
* cleanup
* cleanup
* added breaking changes
* update changelog and breaking changes upgrade document to reverse the change to always return 200 per the spec.
* back out documentation change
* update documentation
* fix tests
* dstu2
* dstu3
* fix r4 validation warning test
* changelog
* hapi-fhir version bump to 6.5.10-SNAPSHOT
* fix cdr test
* fix tests
* remove accidental commit
---------
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* Ensure querying $mdm-link-history on only golden resource or resource ID does not result in an error.
* Change MdmHistorySearchParameters semantics back to set**** so we don't need to a hapi-fhir to cdr bump.
* Remove envers disabling from HibernatePropertiesProvider.getDialect as by then it's too late.
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/changelog/6_6_0/4680-mdm-link-history-only-one-of-each-param-no-error.yaml
Co-authored-by: Ken Stevens <khstevens@gmail.com>
---------
Co-authored-by: Ken Stevens <khstevens@gmail.com>
* Initial commit adding support for partition awareness to Bulk Export.
* Additional cleanup and remove references in tests to "all partitions".
* Additional cleanup and remove references in tests to "all partitions".
* More cleanup, test fixes and additional checking to validate partition accesses.
* Additional changes to ensure checking of partition during polling operations.
* Add change log.
* More cleanup.
* Change recommended in code review.
---------
Co-authored-by: ianmarshall <ian@simpatico.ai>
* handle empty values for QueryParameterUtils.toEqualToOrInPredicate and QueryParameterUtils.toNotEqualToOrInPredicate
* fix tests that were improperly mocked
* Revert "handle empty values for QueryParameterUtils.toEqualToOrInPredicate and QueryParameterUtils.toNotEqualToOrInPredicate"
This reverts commit 4382cd31
* throw InvalidRequestException if non-existent reference field is provided for a _has query
* fix test
* fixed
* changelog
* add another test
* improve docs
* fix change log
* fix test
* fix test
---------
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* Start work optimizing transaction
* Tons of test cleanup
* Cleanup
* More optimization
* Optimize
* Many tests fixed
* Work on test fixes
* Optimization done, now doing cleanup
* Cleanup
* Add docs
* Test fixes
* Test fix
* License headers
* Test fix
* Test cleanup
* Test fix
* First commit: prototyping code.
* Push down hard-coding of MdmLink revision results into MdmLinkQuerySvcImplSvc.
* More fixes and push hard-coded MdmLink revisions to DAO. Add unit test for converter. Add largely disabled new Spring config to load the AuditReader. Add new interface method to Dao interface.
* Add config key for enabling envers. Add generated javadoc to EnversAuditConfig. Add properties for both the new config and the new mdm history REST API.
* First commit post-merge with new logic to retrieve audited MdmLinks and convert them to JSON.
* Change revision timestamp long to a Date.
* Add a separate inheritance hierarchy for BasePartitionable classes that use Hibernate Envers. Ensure MdmLink is part of this new hierarchy. Fix HapiFhirJpaMigrationTasks to properly migrate the modification of HFJ_REVINFO from long to timestamp and to add partition_id and partition_date to the MdmLink audit table.
* Deprecate IMdmLinkDao.findHistory() and mark for removal as well as related methods.
* Add changelog. Handle empty query results. Remove hard-coded disabling of envers. Clean up JPA code. Clean up unit tests and make them pass.
* Add new hapi-fhir system property to disable envers but leave it enabled by default. Fix nasty validation bug in IdHelperService. Tweak MDM dao to throw another Exception and code if envers is disabled.
* Fix error code messages. More cleanup.
* Another error code fix.
* Add documentation for new feature.
* Fix unit test. Fix migration tasks to drop and add column instead of modifying it because of a postgres error.
* Cleanup TODOs, delete dead code, tweak unit tests, move/rename classes.
* Default implementation of new history DAO method to avoid need for bump.
* Non-dupe Msg code.
* Since 6.5.7.
* Remove misleading comment.
* Set disabled to TRUE, not FALSE.
* First round of code review fixes.
* Apply documentation suggestions from code review
Co-authored-by: michaelabuckley <michaelabuckley@gmail.com>
* Code review fix: Split out $mdm-link-history into a separate provider that's enabled by configuration.
* Change configuration strategy from system properties to JpaStorageSettings and JpaStorageSettingsConfigurer. Hook into these new settings from HibernatePropertiesProvider. Update more documentation.
* Fix unit test failure in SearchQueryBuilder.
* Apply suggested Javadoc and documentation changes from code review
Co-authored-by: michaelabuckley <michaelabuckley@gmail.com>
* Change semantics for this feature from disabled to enabled.
* Fix failing unit test.
* Fix conditional logic for reversal of envers disabled/enabled.
---------
Co-authored-by: michaelabuckley <michaelabuckley@gmail.com>
* changes for GL-4023
* changes for GL-4023
* changes for GL-4023
* changes for GL-4023
* changes for GL-4023
* changes for GL-4023
---------
Co-authored-by: isaacwen <isaac.wen@smilecdr.com>
* Introduced new interface, refactored SearchParamWithInlineReferencesExtractor, added new test
* clean up, remove unused param
* added change log
* moved error message to properties file, made base class abstract
* fixed issue with test
* code review changes
---------
Co-authored-by: Steven Li <steven@smilecdr.com>
* Start work on refchains
* Semi working
* Add tests for transactions
* Add docs and lots of tests
* Add changelog
* Add tests
* Work on cleanup
* Add document operations
* Test fix
* Test fix
* Fixes
* Fix typo
* Test fix
* Test update
* Test updates
* Test fix
* Test fixes
* Test additions
* Test fix
* Add some javadocs
* Test fixes
* Intermittent test fix
* Doc tweak
* Test fixes
* Merge master in
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa/search.md
Co-authored-by: michaelabuckley <michaelabuckley@gmail.com>
* Review comments
* Version bump
* Add license
---------
Co-authored-by: michaelabuckley <michaelabuckley@gmail.com>
* First commit with new maven deps for envers and stubbed changelist.
* Add repositoryFactoryBeanClass = EnversRevisionRepositoryFactoryBean.class to BaseAppCtxPersistence. Comment it out in JpaConfig. Add constant for hibernate.integration.envers.enabled. Hard-code envers to false. App starts without error. Basic smoke testing for MpmLink update works.
* Add mdmLink code to retrieve envers history and unit test it.
* Initial code to handle envers from HapiFhirEnversRevision along with a custom extension of the revision/REVINFO entity.
* Add changelist and tweak table/sequence/field names and clean up the HapiFhirJpaMigrationTasks method.
* Fix some unit test failures and address TODOs.
* Ensure hard-coded deactivation of envers is overridden by unit tests.
* Remove commented-out code.
* Address code review comments.
* Remove sysout traces.
* Tweaks to poms with comments explaining why I left the versions in the plugin dependencies. Get rid of a duplicate envers dependency.
* Bump hapi-fhir version to 6.5.5-SNAPSHOT.
* Disable intermittently failing test: PartitionedSubscriptionTriggeringR4Test.testCreateSubscriptionInPartitionAndResourceInDifferentPartition
* Try disabling Batch2CoordinatorIT failing test and see if branch pipeline passes.
* Add back hapi-fhir-validation-resources-r4b to hapi-fhir-jpaserver-base pom.xml.
* Bump hapi-fhir to 6.5.6-SNAPSHOT.
* Bump rest of hapi-fhir to 6.5.6-SNAPSHOT.
* Fix compile error on Batch2CoordinatorIT.
* Change revision ID column from integer to long in both the revision entity and the migration tasks. Fix a bug with the migration tasks having the wrong name for the timestamp column.
* Fix interface in MongoDB to return Long for the revision ID instead of Int. Implement TINYINT for all supported database products. Keep TARGET_TYPE column at 40 instead of 100 for now since otherwise the schema migration test will fail. Also, don't try to rename the foreign key or the schema migration test will fail.
* Creating test to reproduce the issue.
* rebasing development branch from release to master.
* adding migration task.
* providing solution to duplicate resource creation and passing initial test.
* making initial test more readable.
* Implementing test for scheduled deletion of stale searchUrl entries.
* Implementing test for scheduled deletion of stale searchUrl entries.
* Removing interface declaration since it was not needed.
* Reverting changes.
* Adding changelog.
* Adding comments for clarity.
* Adding purgeDatabase operation in IT to delete all ResourceSearchUrlEntity [before|after}Each tests.
* Adding pom.xml exclusion to get all tests passing.
* Adjusting query counts and adding pointcut name to log in interceptor.
* Fixing typos.
* WIP
* implementing edge case tests and solutions.
* wip: passing all tests.
* wip: passing more tests .
* wip: passing tests.
* wip: passing tests.
* enhancing the test.
* changes following code review.
* modifications to tests.
* minor modifications following second code review.
* passing all tests.
---------
Co-authored-by: peartree <etienne.poirier@smilecdr.com>
- use a separate enum for the states - chunks have different transitions than instances.
- use transactional update events for work-chunk state transitions
- introduce spec-test to define behaviour of batch2 storage
- replace synchronized facade with simpler ProxyUtil handler.
- change job cancellation to db update query