Commit Graph

9406 Commits

Author SHA1 Message Date
Tadgh 78b3b148ba
Support `_exportId` for bulk exports. (#4781)
* Full implementation, test, changelogs

* Add changelogs

* Add default method

* Update hapi-fhir-storage-batch2-jobs/src/main/java/ca/uhn/fhir/batch2/jobs/export/WriteBinaryStep.java

Co-authored-by: James Agnew <jamesagnew@gmail.com>

* Code Review Comments

* Compilation failures

---------

Co-authored-by: James Agnew <jamesagnew@gmail.com>
2023-04-27 21:46:09 +00:00
James Agnew f9de5c918e
Apply fixes to review comments for #4772 (#4780)
* Add post-fetch filtering to bulk export

* Add changelog

* Add validator

* Test fixes

* Test fix

* Review comments for #4772

* Commit fix
2023-04-27 14:23:01 +00:00
markiantorno f6094eed47 removing backport tag from 4772 2023-04-27 08:22:13 -04:00
James Agnew 855e10a62d
Add post-fetch filtering to bulk export (#4772)
* Add post-fetch filtering to bulk export

* Add changelog

* Add validator

* Test fixes

* Test fix
2023-04-26 17:05:03 -04:00
Ken Stevens 6b9af3291e
R5 Subscriptions (#4748)
* comments from conversation with Gino

* rewrite R5 subscription canonicalization.  Expect the r5 subscription tests to fail now

* SubscriptionTopicR5Test passes now

* R4B tests pass now

* first two tests in RestHookTestR5Test now pass.  just need to convert the rest

* third test passes

* fourth test passes

* tests pass up to line 294

* wow what a marathon.  Turns out when we stripped the version we didn't remove it from the meta version.

* passes up to 427

* RestHookTestR5Test tests pass up to line 582

* RestHookTestR5Test tests pass up to line 591
Added SubscriptionTopicRegisteringSubscriber

* RestHookTestR5Test tests pass up to line 591
Added SubscriptionTopicRegisteringSubscriber

* RestHookTestR5Test tests pass up to line 636
Added SubscriptionTopicValidatingInterceptor

* RestHookTestR5Test tests pass up to line 689

* RestHookTestR5Test tests pass up to line 758

* 4 failures left

* woohoo all tests pass

* all tests pass and no PointCutLatch errors

* Msg.code

* changelog

* checkstyle

* fix some tests

* compile issue

* fix test

* fix regression

* fix test

* R5 currently runs tests in multiple threads, so change the sensitive one to an IT

* licenses

* review feedback

---------

Co-authored-by: Ken Stevens <ken@smilecdr.com>
2023-04-26 17:01:00 +00:00
michaelabuckley 8813d9beda
Batch stabilization (#4647)
* 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>
2023-04-25 15:47:23 -07:00
Tadgh d6d2ff531f
4757 externalized binary npe (#4759)
* Basic test for reading from provider

* Basic test for reading from provider

* Failing test

* Add changelog

* Update hapi-fhir-jpaserver-test-r4/src/test/java/ca/uhn/fhir/jpa/provider/r4/BinaryStorageInterceptorR4Test.java

Co-authored-by: Ken Stevens <khstevens@gmail.com>

---------

Co-authored-by: Ken Stevens <khstevens@gmail.com>
2023-04-25 18:34:27 +00:00
michaelabuckley 20c7a32203
Add covering data to res_link index for all tgt->src queries. (#4769)
Add covering data to res_link index for all tgt->src queries.
2023-04-24 23:24:11 +00:00
Tadgh 08c997c169
Compile CDR Master against specific HAPI Branch (#4768)
* Create new workflow

* Remove dead calls
2023-04-24 23:18:40 +00:00
Whiteiguana b7bc630500
4745 one source record should create no match link with no errors when two golden records are possible matches (#4765)
* created failing test for issue

* remove unused code from IT

* Fixed an issue where marking a golden resource as no match would fail.

---------

Co-authored-by: Steven Li <steven@smilecdr.com>
2023-04-24 14:38:40 -04:00
Brenin Rhodes 9670150f20
4697 - Add Clinical Reasoning Operations (#4722)
* Initial stub out of the CR repo API

* Pagination first pass

* Add HapiFhirRepository and Questionnaire operations

* Add services and providers for ActivityDefinition, PlanDefinition and QuestionnaireResponse

* Simplify the repo usage

* Simplified constructors

* Fix pom

* Setup service config

* Add test

* Add tests

* Add canonical and resource parameters to cr operations

* Add $questionnaire-package operation

* Remove services and cleanup beans

* Cleanup

* Add changelog

* Fix pom

* Add id parameter to extract

* Break out config by IG

* cleanup

* cleanup

* cleanup

* cleanup

* Add type level operations

* Move loadProvider call out of constructors with an EventListener annotation

* Cleanup package operation

* Update BaseCrR4Test.java

* cleanup

* cleanup

* Fix tests

* Fix test

* Fix $package arguments

* Remove $questionnaire-package

* Add r5 apply operation name

* Remove config

* cleanup

* cleanup

* cleanup

* cleanup

* Comment out failing tests.  Fix coming in another branch.

* Fix config for 1.3 cql measure tests

* Fix checkstyle

* Change measure service config to resolve intermittent test issues

---------

Co-authored-by: Jonathan Percival <jonathan.i.percival@gmail.com>
2023-04-24 14:37:55 -04:00
TipzCM 1c0addafeb
transaction bundle multi-threading issues (#4739)
* 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>
2023-04-20 18:43:37 +00:00
Ken Stevens 58850fed82
try removing fork count from surefire (#4752)
* try removing fork count from test-r4

* try removing fork count from the rest of the projects

---------

Co-authored-by: Ken Stevens <ken@smilecdr.com>
2023-04-20 13:58:35 -04:00
Qingyixia 55613a9bf2
Fixed the Null Pointer Exception on mdm-submit operation (#4751)
* Fixed the Null Pointer Exception on mdm-submit operation

* Addressing suggestion
2023-04-19 12:24:39 -07:00
Qingyixia 6eafd3fe5d
The Lenient error handler will now throw exceptions when encode invalid extension containing value and nested extensions (#4747)
* The Lenient error handler will throw exceptions when encode invalid extension containing value and nested extensions

* Addressing suggestions

* Minor changes

* Minor fix
2023-04-18 13:59:23 -04:00
Ken Stevens 9e741cb145
remove enabled flag and instead only create the subscription topic beans in the fhir versions that use them (#4737)
Co-authored-by: Ken Stevens <ken@smilecdr.com>
2023-04-18 10:20:43 -04:00
samguntersmilecdr 396007af40
test + change + changelog (#4732) 2023-04-18 09:25:15 -04:00
Etienne Poirier 88459d0d00
4657 method name is inconsistent with the method behavior (#4659)
* Test implementation

* providing method getMessageKeyOrDefault();

* providing changelog

* preping codereview.

* Deprecating method getMessageKeyOrNull in favor of getMessagekey()

* updating comments following code review.

* Bumping version to 6.5.13-SNAPSHOT

* passing all tests.

---------

Co-authored-by: peartree <etienne.poirier@smilecdr.com>
2023-04-17 10:41:08 -04:00
James Agnew 7bdbda9ef0
Improve Subscription Retriggering Efficiency (#4742)
* Improve subscription efficiency

* Reduce number of queries

* Add changelog

* Fix ITs

* Review comments

* Test fix
2023-04-17 08:18:57 -04:00
michaelabuckley 83f216bcee
Add `old-intellij` profile to support the old way. (#4740)
Activate the `old-intellij` profile to get the old behaviour
where everything is Java 17.
2023-04-14 21:38:38 +00:00
Luke deGruchy 35bd1c400a
Fix bundle auto-create by checking for IBaseReference.hasIdentifier() before validating URL-based references (#4731)
* First commit:  New tests, logs, and comments.

* Add hacky fix to run pipelines on.   Add another unit test.

* Disable baseUrl checking if hasIdentifier() is true.

* Add changelog.  Tweak unit tests.

* Remove junk.

* Add more assertions to unit tests.  Make new production fix code clearer.

* Add more clarity to unit tests.

* Another unit test fix.
2023-04-14 17:55:31 +00:00
James Agnew 869b6c306a
Allow transaction with conditional create and patch in same bundle (#4735)
* Allow transaction with conditional create and patch in same bundle

* Add changelog

* Cleanup
2023-04-13 15:51:46 -04:00
Ken Stevens cc9d1b992d
fix subscription module restart bug (#4734)
* fix subscription module restart bug

* changelog

---------

Co-authored-by: Ken Stevens <ken@smilecdr.com>
2023-04-13 17:06:04 +00:00
Ken Stevens b88ccbc7b0
R4B SubscriptionTopic support (#4724)
* add tests for r4b subscriptions

* begin with failing test

* prepare for SubscriptionTopicLoader

* backwards compatibility

* subscription topic registry done

* topic matching is working

* all but delivery is working now

* yay test passes with FIXMEs

* FIXME -> WIP

* switch notification to bundle

* message codes

* fixme

* disable services for fhir versions below R4B

* fix regression

* fix intermittent

* this change will likely break some other tests

* try a safer option

* fix tests

* fix intermittent (I hope)

* unit test

* improve logic around topic subscription categorization

* moar test

* moar test

* changed to support both r4b and r5

* moar test

* cleanup for test

* moar test

* moar test

* moar test

* changelog

* comment

* Msg.code

* fix mock

* add update test

* fix test cleanup

* tracking link for version converter issue

* review

* fix test

* fix test

---------

Co-authored-by: Ken Stevens <ken@smilecdr.com>
2023-04-12 00:44:08 +00:00
chalmarm 450ccb5599
$care-gaps functionality integration (#4561)
* care gaps integration

* fix review comments.

* Clean up for HAPI Conventions

* More cleanup to share constants

* More cleanup of tests

* More cleanup

* Update CQL versions

* Added changelog

* fix failing test cases for care gaps.

* WIP care-gaps tests

* implementation of end to end care gaps test case.

* addressing the code review comments.

* addressing comments to bring to hapi-fhir standards.

* added the docs required.

* Adding hapi-fhir-storage-cr module for test coverage inclusion.

* Addressing the comments.

* addressing comments and updated with master.

* Addressing comments for minor changes requested.

---------

Co-authored-by: Jonathan Percival <jonathan.i.percival@gmail.com>
Co-authored-by: Chalma Maadaadi <chalma@alphora.com>
2023-04-11 16:28:14 +00:00
Luke deGruchy 3a2b722093
Clinical Reasoning code fixes (#4726)
* Try removing the IFhirResourceDaoValueSet Bean.

* Add more TODOs.

* Push changes before testing with master.

* Prevent the following error from happening with mongo, dqm, and no validation support module configured:

org.springframework.context.annotation.AnnotationConfigApplicationContext@4a5b9e6b has not been refreshed yet

* Cleanup unnecessary changes.

* Add changelog.
2023-04-11 14:25:44 +00:00
David 89cb179116
Fix fhirweb diff template error (#4721)
* Add test to check template returned is not empty

* Check operation is diff so web template does not error

* Refactor for clarity

* add changelog

---------

Co-authored-by: David Chen <david.chen@smilecdr.com>
2023-04-11 09:28:16 -04:00
James Agnew e500b23fe6
Instance level reindex operations (#4699)
* Reindex improvements

* Work

* Work on reindex

* Test fixes

* Generator now working

* Add instance reindex

* Work

* Build fixes

* Build fix

* Fixes

* Add changelog

* Test fixes

* Resolve checkstyle fix

* Version bump

* Address review comments

* Resolve imports

* Address review comments

* Test fix
2023-04-06 17:00:41 -04:00
JP 182ac3b36c
Initial stub out of the CR repo API (#4627)
* Initial stub out of the CR repo API

* Pagination first pass

* cleanup

* add transaction tests

* add search param conversion working logic

* add result parameter conversion

* add test for keymap

* add type checking logic and tests

* remove and / or logic from test and cleanup

* Initial stub out of the CR repo API

* Pagination first pass

* cleanup

* add transaction tests

* add search param conversion working logic

* add result parameter conversion

* add test for keymap

* add type checking logic and tests

* Fix repository tests to use parameters

* Cleanup after latest merge

* Cleanup

* Cleanup

* Fix Msg codes

* Fix Msg codes

* Rename variable for clinical reasoning module

* Update clinical-reasoning version

* Fix version

* review comments

---------

Co-authored-by: Brenin Rhodes <brenin@alphora.com>
Co-authored-by: Rosie Elphick <rosalie.elphick@smilecdr.com>
2023-04-06 15:53:29 -04:00
michaelabuckley 02556187a3
Fix versions of httpcore-osgi and httpcore-nio to match httpcore (#4720)
Declare versions of httpcore-osgi and httpcore-nio to match httpcore.
2023-04-06 19:42:29 +00:00
michaelabuckley f1166fe0e6
Tune postgres settings for Hapi indexing. (#4712)
Tune postgress settings for Hapi indexing.
2023-04-05 10:01:24 -07:00
Primož Delopst 49a39c195c
Improve performance of ResourceSearchView (use hfj_resource res_id instead of hfj_res_ver res_id when querying by resource pids) (#4716)
* Improve performance of ResourceSearchView (use hfj_resource res_id instead of hfj_res_ver res_id when querying by resource pids)

* Add changelog and credit

---------

Co-authored-by: Primož Delopst <primoz.delopst@better.care>
Co-authored-by: James Agnew <jamesagnew@gmail.com>
2023-04-04 18:30:28 +00:00
michaelabuckley fa00ef23e2
Remove IntelliJ workaround now that IDEA-85478 is fixed. (#4710)
Remove IntelliJ workaround now that IDEA-85478 is fixed.
2023-04-03 20:04:18 +00:00
James Agnew a2bc9a7212
Partition aware search cleanup (#4706)
* Partition aware search cleanup

* Compile fixes

* Build fixes

* HAPI FHIR version bump

* License

* License header

* Tests
2023-04-02 11:50:20 -04:00
Ken Stevens 4fbeeccda4
enable some disabled tests (#4662)
* 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>
2023-04-02 08:47:16 -04:00
Justin McKelvy 9066ad618e
Bug cql engine paging (#4664)
* WIP paging

* iterable HapifhirRetrieveProvider

* Bundle iterating action

* cr config update

* adding paging functionality for search in cr

* updating BundleIterable logic and removing paging references

* add measureeval threaded config into cr

* update properties

* adding hapi change log 4663

* version bump for hapi

* update exception with msg.code, move copyright

* exorcism of paging provider from cr

* updating IT tests for terminology evaluatemeasure

* unit test, javadocs, removed reflection code

* added comments for explanation

* fix javadoc, iterable.size instead of method

* update from master

---------

Co-authored-by: Jonathan Percival <jonathan.i.percival@gmail.com>
Co-authored-by: justin.mckelvy <justin.mckelvy@smilecdr.com>
2023-03-31 11:09:50 -04:00
StevenXLi 3fb9a16975
4693 enable partitioning in bulk import (#4694)
* created failing tests

* implemented feature, added more tests

* added documentation and changelog

* fixed duplicate error code

* code review changes

---------

Co-authored-by: Steven Li <steven@smilecdr.com>
2023-03-31 09:43:40 -04:00
James Agnew ccd1e94a47
Fix index uniqueness (#4703) 2023-03-30 18:49:07 +00:00
Luke deGruchy 1faf77dcc8
Fix error message for bad $mdm-link-history input and handle comma-delimited input (#4701)
* Fix error message for bad $mdm-link-history input and handle comma-delimited input.

* Code review feedback:  filter out null objects in the stream.
2023-03-30 12:51:17 -04:00
James Agnew ee8b5b39d4
Render narrative in HTML resource view (#4702)
* Working

* Add changelog
2023-03-30 14:18:35 +00:00
James Agnew e69fe05e96
Re-enable "Flush SP cache after SP change" (#4635)
* Revert "Revert "Flush SP cache after SP change (#4566)" (#4614)"

This reverts commit 9492999ed6.

* Additions for performance

* HAPI version bump

* Test logging improvement

* Test fixes

* Test fix

* Test fix

* Compile fix

* Fix

* License headers

* Test fix
2023-03-29 19:57:57 -04:00
James Agnew 05b3bff89f
Order Location searches using near in closest distance to center of the box (#4687)
* All working

* CHangelog tweak

* Address review comments
2023-03-29 03:19:34 +00:00
samguntersmilecdr 2e70b351a2
tests + change + changelog (#4672) 2023-03-28 15:52:05 -04:00
Mark Iantorno 4883be0474 removing hapi-fhir-jpa-server from MR pipeline 2023-03-28 15:31:30 -04:00
Luke deGruchy 734bb3cbff
Ensure querying $mdm-link-history on only golden resource or resource only does not result in an error (#4681)
* 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>
2023-03-28 16:25:59 +00:00
Luke deGruchy 479e412786
Ensure that source resource type of Provenance is also excluded from the $everything linkage. (#4692) 2023-03-28 14:41:24 +00:00
IanMMarshall b2c0a48915
4610 enable partitioning in bulk export (#4682)
* 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>
2023-03-27 14:22:30 -04:00
Nathan Doef 90da12fbdf
_has query with non-existent reference field (#4676)
* 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
2023-03-27 15:52:29 +00:00
Ken Stevens 47262f5bd5
Ks 20230324 include prov (#4685)
* fix test

* fixed

* changelog

* add another test

* improve docs

* fix change log

* fix test

* fix test

---------

Co-authored-by: Ken Stevens <ken@smilecdr.com>
2023-03-25 17:50:12 -04:00
michaelabuckley 7d26a7a38d
V2 index for string (#4629)
v2 indexing for String for when sorting.
2023-03-24 19:45:14 +00:00