66 Commits

Author SHA1 Message Date
James Agnew
8000d2d0cf
SQL Join Rework (#2086)
* switched to adding annotations.  Just did a test with Token, but the sql looks clean.

* switched to adding annotations.  Just did a test with Token, but the sql looks clean.

* added the other six index links

* trying different annotations

* Start testing

* Update resources on package install

* Add changelog

* Join rework

* CLean up SQL builder

* Add docs

* SP rework

* Join work

* Work on params

* Work on refactor

* Work on chains

* Work on joins

* Rework queries

* Work on queries

* Many more tests passing

* Refs test

* Work on sorting

* Work on tests

* More joins work

* Work on tests

* Work on queries

* Tests passing

* More test fixes

* Test fixes

* Work on SQL

* Tests passing

* Add some tests

* Add some tests

* License headers

* Use entity manager to get datasourcd

* One more fix

* Model cleanup

* Ongoing work

* Fixes

* Fixes

* Work on joins

* Ongoing fixes

* Merge conflict

* Cleanup

* clean up unused fields

* Work on join

* COmpile fix

* Rework querying

* Update hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/config/HibernateDialectProvider.java

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

* Address review comments

* Resolve fixmes

* Test fix

* Test fixes

* Test fix

Co-authored-by: Ken Stevens <khstevens@gmail.com>
2020-10-26 05:24:26 -04:00
Ken Stevens
3b91873b7c
delete expunge (#2131)
Added delete _expunge=true
2020-10-20 17:21:50 -04:00
Tuomo Ala-Vannesluoma
1435540320
Improve synchronous searching by providing offset & limit support (#2059)
* Improve synchronous searching by providing offset & limit support

Add support for offset querying which leverages paging at the query level
Add configuration for search default page size and search maximum page size
If using offset, always use synchronous searching to avoid extra database insert/update etc.
When using offset, only calculate count if it's wanted
Validate params closer to provider and handle size if search returned "all" (or last)

* Review and test fixes

Comment _offset as nonstandard parameter
Make synchronous search always count the total value (for now)
Fix issue with FulltextSearchSvcImpl mutating param map
Dirty fix for BaseJpaTest (not sure how to fix the including resources issue)

* Remove temporary count querying fix for synchronous loads

* Fix offsetting of everything operations, do not drop zero offset

* Fix jpa test default and maximum page size, add some fixmes to tests before resolved

* Ignore one failing test, fix others

* Fix Dereferenced variable may be null

* Fix everything paging in R4 by adding DISTINCT if synchronous load is used

Also fix assertion of size when hitting fetchSizeDefaultMaximum

* Add documentation about offset annotation and paging

Co-authored-by: James Agnew <jamesagnew@gmail.com>
2020-10-12 17:42:03 -04:00
James Agnew
d2aae361bf
Rewrite deferred interceptor callback framework (#2121)
* Rewrite deferred interceptor callback framework

* Improve deferred handling

* Null guard

* Test fix
2020-10-07 20:08:18 -04:00
IanMMarshall
f1710fd0be
Merge pull request #2081 from jamesagnew/feature_2020_09_02_term_multi_version_support
Feature 2020 09 02 term multi version support
2020-10-01 12:24:40 -04:00
ianmarshall
dc3443665c Changes per code review. 2020-09-29 21:12:27 -04:00
Ken Stevens
09d09233ff
empi bugfixes and enhancements (#2104) 2020-09-29 17:27:43 -04:00
ianmarshall
1dc4a533d6 Fixes to terminology loader. 2020-09-25 21:43:15 -04:00
ianmarshall
47244c54dc Merge remote-tracking branch 'origin/feature_2020_09_02_term_multi_version_support' into im_20200728_term_multi_version_support
# Conflicts:
#	hapi-fhir-jpaserver-api/src/main/java/ca/uhn/fhir/jpa/api/dao/IFhirResourceDaoCodeSystem.java
#	hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/term/BaseTermReadSvcImpl.java
#	hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/term/loinc/BaseLoincHandler.java
#	hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/term/loinc/LoincIeeeMedicalDeviceCodeHandler.java
#	hapi-fhir-jpaserver-migrate/src/main/java/ca/uhn/fhir/jpa/migrate/tasks/HapiFhirJpaMigrationTasks.java
#	hapi-fhir-validation/src/main/java/org/hl7/fhir/common/hapi/validation/support/CommonCodeSystemsTerminologyService.java
2020-09-25 09:10:07 -04:00
ianmarshall
6f9874468a Merge remote-tracking branch 'origin/master' into feature_2020_09_02_term_multi_version_support 2020-09-25 08:54:17 -04:00
James Agnew
ef4f3df945
Don't install draft package contents (#2099)
* Don't install draft package contents

* Add changelog

* Add changelog
2020-09-22 09:44:36 -04:00
Frank Tao
64f2bae2e7 Impl CodeSystem $validate-code for R4 with basic test cases 2020-09-18 22:30:59 -04:00
Ken Stevens
3189819dd5
limit transaction size config (#2087) 2020-09-16 14:13:03 -04:00
ianmarshall
7b15f85fa1 Merge remote-tracking branch 'remotes/origin/feature_20200830_term_multi_version_support' into feature_2020_09_02_term_multi_version_support 2020-09-15 12:35:31 -04:00
Frank Tao
d019dee786 Added url/conceptMapVersion for ConceptMap to support translate 2020-09-06 16:11:09 -04:00
James Agnew
c6777578a8
Avoid DB binary storage deadlock (#2062)
* Avoid DB binary storage deadlock

* Add changelog

* Rework
2020-09-01 09:52:38 -04:00
ianmarshall
4db00fa604 Fix broken test and cleanup. 2020-08-17 18:14:37 -04:00
ianmarshall
bd94ff96cc Merge remote-tracking branch 'remotes/origin/master' into im_20200728_term_multi_version_support 2020-08-16 21:38:41 -04:00
Ken Stevens
7dd7f2b923
resource pid userdata fix (#2044)
* fixed resource UserData RESOURCE_PID for expunge hook (was incorrectly pointing to ResourceHistoryTable pid instead of ResourceTable pid.

* fix merge
2020-08-16 20:48:39 -04:00
jamesagnew
92718c7ef2 Version bump to 5.2.0-SNAPSHOT 2020-08-12 10:23:46 -04:00
jamesagnew
5fb7bd5156 Version bump to 5.1.0 2020-08-11 17:43:24 -04:00
ianmarshall
d39348d7bd Initial changes to support multiple versions for code system. 2020-08-09 11:49:04 -04:00
James Agnew
8e0023c385
Disable referential integrity for some paths (#2025)
* Disable referential integrity for some paths

* Add changelog

* Remove unneeded file
2020-08-09 07:09:37 -04:00
Tadgh
ad887428b3 Add removeAll function to DeleteConflictList 2020-08-01 13:15:22 -07:00
Tadgh
e82451533f Move provider logic. Fix tests to reflect. Remove now-dead methods 2020-07-21 07:52:51 -07:00
Tadgh
62b5221c3f Move Empi Batch work to the BaseHapiResourceProvider, allowing manual EMPI runs on a server/type/ID basis. 2020-07-18 13:36:14 -07:00
James Agnew
077ee02771
Fix validation for enumerated ValueSets (#1982)
* Allow code validation against enumerated VS

* Work on validation

* Work on this

* Work on tests

* Work on validation

* Work on tests

* Work on validation

* Test fixes

* Add changelog

* For a change

* Test fixes
2020-07-15 13:38:14 -04:00
jamesagnew
d6f6ec2d66 License headers 2020-07-13 16:57:24 -04:00
James Agnew
baba4cc240
Avoid version conflicts on current writes (#1971)
* Add auto retry of transactions

* Experiment in Maven build

* Transaction autoretry

* Work on transaction retries

* Work on transaction retry

* Work on transaction retry

* Fix tests

* Avoid version conflicts

* Add changelog

* Resolve LGTM issue

* FIx transaction scope error

* Test fixes

* Test fix

* Test fixes

* Test fix

* Test fixes
2020-07-13 08:51:13 -04:00
jamesagnew
2cdef055aa Missed commit on #1951
Squashed commit of the following:

commit f820135996bf25d13483012074b38878085e2384
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Tue Jun 30 14:29:24 2020 -0400

    Address review comments

commit 11c4f9defba581132a340a2e5f189a934e829b67
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Tue Jun 30 09:38:16 2020 -0400

    Fix LGTM warning

commit b650fdb9ea7d09bdc1f9f811727e6d23bbf153ce
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Tue Jun 30 09:20:52 2020 -0400

    Test fix

commit 6ebcceeb5ca314313c197ff8543a87343e82a7a1
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Mon Jun 29 18:49:01 2020 -0400

    Add changelog

commit 4a1d7383b0c7d119acf0f97866be902c61cff0f5
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Mon Jun 29 18:46:52 2020 -0400

    Bundle transmission

commit 88bd4abf0cf105765e622a2fedd18b265ec8fbbe
Merge: 7cde945281 25fc747b9f
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Mon Jun 29 17:31:23 2020 -0400

    Merge branch 'master' into ja_20200617_subscription_send_bundles

commit 7cde945281890ce34023a1e954a24503f2741809
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Mon Jun 29 17:10:33 2020 -0400

    Work on seed bundles

commit ed2e62752efc828c16e0ca772c76ca1428610777
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Mon Jun 29 09:39:10 2020 -0400

    Work on subscriptions

commit 52addcff5916ee3f32b245f464dfa13f4e1c6ac8
Merge: 64a9eaa4de bf8de84801
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Sat Jun 27 18:09:23 2020 -0400

    Merge branch 'master' into ja_20200617_subscription_send_bundles

commit 64a9eaa4de38b5b16c0b5d8f3727634c897f06de
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Wed Jun 17 18:32:17 2020 -0400

    Start work

commit f74eba5397d40f948970c0fc77ef721b021de46a
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Wed Jun 17 18:28:18 2020 -0400

    Terser should create correct Enumeration on create
2020-06-30 14:31:40 -04:00
James Agnew
b8da4f0140
Add package support (#1911)
* Begin rework of package management

* Work on NPM

* Work on package management

* Work on NPM

* NPM rework

* Work on NPM

* NPM package rework

* Updates

* Updates

* Add license

* Work on package server

* Work on package importing

* Work on package management

* Package rework

* Work on packages

* Work on package manager

* Work on pkgs

* NPM work

* NPM rework

* Work on package cache

* Work on NPM

* Work on NPM

* Package fixes

* Add tests

* Tweaks

* Test fixes

* Add changelog

* Avoid snapshot dep
2020-06-10 05:30:20 -04:00
ianmarshall
64aa0feb5d Fix for issue of persisting blob data types to MS SQL databases. 2020-06-09 11:06:01 -04:00
James Agnew
21330a0a22
Transaction create performance improvement (#1899)
* Work on perf issue

* Improve write performance for large bundles with tags

* Add changelog

* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/changelog/5_1_0/1899-improve-write-xact-perf-with-tags.yaml

Co-authored-by: IanMMarshall <49525404+IanMMarshall@users.noreply.github.com>

* Update hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/util/MemoryCacheService.java

Co-authored-by: IanMMarshall <49525404+IanMMarshall@users.noreply.github.com>

* Update hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/util/MemoryCacheService.java

Co-authored-by: IanMMarshall <49525404+IanMMarshall@users.noreply.github.com>

* Test fix

* Test fixes

* Test fixes

Co-authored-by: IanMMarshall <49525404+IanMMarshall@users.noreply.github.com>
2020-06-05 05:26:06 -04:00
jamesagnew
75a74bdd38 License headers 2020-06-02 18:20:56 -04:00
ianmarshall
f48214deda Merge remote-tracking branch 'remotes/origin/master' into im_20200316_lastn_operation_elasticsearch
# Conflicts:
#	hapi-fhir-jpaserver-searchparam/src/main/java/ca/uhn/fhir/jpa/searchparam/extractor/BaseSearchParamExtractor.java
2020-05-29 23:54:11 -04:00
ianmarshall
a4811f1508 Changes per code review. 2020-05-29 23:47:44 -04:00
James Agnew
22af36ae7b
Conditional update on Partitioned Server fails (#1870)
* Fix #1869

* Remove FIXME

* Test fix

* Test fix
2020-05-27 10:40:29 -04:00
ianmarshall
4d378ee0ed Merge remote-tracking branch 'remotes/origin/master' into im_20200316_lastn_operation_elasticsearch
# Conflicts:
#	hapi-fhir-cli/hapi-fhir-cli-jpaserver/src/main/java/ca/uhn/fhir/jpa/demo/CommonConfig.java
#	hapi-fhir-jpaserver-base/pom.xml
#	hapi-fhir-jpaserver-searchparam/src/main/java/ca/uhn/fhir/jpa/searchparam/extractor/BaseSearchParamExtractor.java
#	hapi-fhir-jpaserver-searchparam/src/main/java/ca/uhn/fhir/jpa/searchparam/extractor/ISearchParamExtractor.java
2020-05-22 17:04:01 -04:00
IanMMarshall
a1a3d9de38
Merge branch 'master' into im_20200520_cascade_delete 2020-05-22 16:11:38 -04:00
Tadgh
d1b963321a
MVP EMPI implementation (#1857)
EMPI Initial Implementation (still plenty of known gaps)
2020-05-22 15:03:20 -04:00
IanMMarshall
612fb215d6
Update hapi-fhir-jpaserver-api/src/main/java/ca/uhn/fhir/jpa/api/config/DaoConfig.java
Co-authored-by: James Agnew <jamesagnew@gmail.com>
2020-05-22 13:50:42 -04:00
IanMMarshall
51604dab2c
Update hapi-fhir-jpaserver-api/src/main/java/ca/uhn/fhir/jpa/api/config/DaoConfig.java
Co-authored-by: James Agnew <jamesagnew@gmail.com>
2020-05-22 13:50:35 -04:00
ianmarshall
b501a601b7 Some final cleanup minor updates. 2020-05-22 13:36:08 -04:00
ianmarshall
a60e5809b2 Changes to enable adjusting limits on delete conflict handling through configuration. 2020-05-22 10:15:04 -04:00
James Agnew
5b2181a563
Implement FHIR Patch (#1850)
* Start working on FHIRPatch

* More work on fhirpatch

* Work on FHIR Patch

* Add patch

* Test fixes

* Test fixes

* Get tests fixed

* Chnage to trigger a build

* Compile fix

* Dependency version fixes

* Test fix

* COmpile fix

* Try to fix build

* Test fix attempt

* Another build attempt

* Another build tweak

* Cleanup
2020-05-20 19:43:55 -04:00
jamesagnew
52c8e3551c Version bump to 5.1.0-SNAPSHOT 2020-05-15 14:43:32 -04:00
jamesagnew
fe0e07a313 Bump to 5.0.1 2020-05-15 05:47:01 -04:00
ianmarshall
529e1e1f5e Merge remote-tracking branch 'remotes/origin/master' into im_20200316_lastn_operation_elasticsearch 2020-05-14 12:09:24 -04:00
jamesagnew
1d13e29ac0 Version bump to 5.1.0-SNAPSHOT 2020-05-12 20:04:20 -04:00
jamesagnew
d631ecff4a Prepare for 5.0.0 2020-05-12 11:49:18 -04:00