Commit Graph

248 Commits

Author SHA1 Message Date
James Agnew 1dc4fb2206
Make quantity indexes use double datatype (#2290)
* Make quantity indexes use double datatype

* Add changelog

* Test fixes

* Test fixes

* Disable test
2021-01-16 18:44:15 -05:00
jamesagnew 5b5023e6ac License headers 2021-01-11 21:00:12 -05:00
Frank Tao f6d4a40388
UCUM Service Support (#2261)
* Added UcumServiceUtil

* Removed ucum-essense.xml

* Added ucum service existing test cases passed

* Added more test cases

* Merge branch 'master' into ft-ucum-support

# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.

* Added back extractReferenceParamsAsQueryTokens

* Added changelog and migration script

* Added length for the string type

* Moved UCUM util to hapi-fhir-jpaserver-model

* Renamed UCUM support to Normalized Quantity Search Support

* Moved setNormalizedQuantitySearchNotSupported to AfterEach

* Changed migrate task to 530

* Removed comments

* Fixed in memory search issue and added more test cases

* Fixed the version order

* License header updates

* Updated based on review comments

* Updated the migration task based on review comments

* Fixed RES_TYPE with type String and length 100

* Changed myParamsQuantityNormalizedPopulated type to Boolean class
2021-01-10 21:05:24 -05:00
jamesagnew 12d366c86e License header updates 2021-01-05 18:13:14 -05:00
Tadgh efc6809ea6
Replacing Hibernate Search 5 with Hibernate Search 6 (#2190)
* Beginning work on converting to hibernate search 6
* replace all out of date properties
* replace all POM references to old versions
* remove the shaded ES jars as HS6 supports 7.9
* Convert "Bridges" to RoutingBinder and RoutingBridge
* Modernize all indexing annotations
* Begin refactoring of search queries (wip)

* Fix spatial API changes, work on BaseTermReadSvcImpl

* Most of the way through the various filter property conversions

* Finished i think with BaseTermReadSvcImpl

* Compiling, but definitely broken

* Start test compilation failures

* All tests compiling (i think)

* remove suggest keywords operation

* Fix bootstrap errors, still have to deal with transient fields

* Rollback CR

* More refactoring, got IDs baked back into docs

* Fix coord util, fix a few more fields which require projection

* merge fixes

* begin refactor of valuesetexpansion tests

* fix another test

* Update tests

* remove todos, add TestContainers

* Fix descendant in

* Add testcontainers, fix another test

* fix more tests, replace embedded es

* Rip out embedded elastic, replace with TestContainer

* merge conflicts for new analyzers

* Bump to CR2 for hibernate search 6. Add forgotten CLI dep. Add backwards compatible codecs

* Remove dead deps, update testcontainer

* Remove java-hamcrest

* Pull asserts up, refactor tests to pass in RP tests

* Update V2 check

* Remove suggest keyword tests

* Split line for testing

* Fix perhaps one of the dumbest programming mistakes in my career so far

* Refactor tests which no longer rely on a strict known order

* Fix up test config, disable log test temporarily

* Remove log4j from being transitively pulled in. re-enable test

* Update log4j exclusions with new bridge. Update test to check for core class

* Move dependency to root pom in dep management section

* Update changelog, add changelog for HS6 with ES requirements. Remove dead comment

* update testst, remove todos

* Add hibernate props provider method, add elastic regexp query

* Add todo for high level client builder

* Modify ElasticsearchRestClientFactory to support HTTPS hosts

* Remove protocol extraction from rest url

* do we even need to index this...?

* remove purge of non-indexed resources

* Add longer timeout to testcontainers

* Add task to add docker CLI to azure pipeline via task, for testcontainers

* WIP remove this

* Dont update version

* Add test for duplicate termconcepts

* Use real hibernate ORM methods

* merge issues

* Add partitionsettigns bean to match master

* Trying to debug testcontainers on azure...

* Trying to debug testcontainers on azure...

* Run even on previous failure

* Fix testcontainer port binds

* Add full text logs attaching, and test reporting

* I love yaml

* Remove comment

* Refactor delta remove to not do a once-over traversal and flatten all children pre-delete. Resolves transaction commit boundary issue

* Modify TX beheaviour

* wip

* Rework to use config and mocked beans for partition-aware lastN

* rework to not use beans and just inject vars i need for test, keps test envs cleaner

* update azure pipeline to only copy test results

* Remove erroneous publish

* Always get test logs

* Make it so indexing works,

* Add todos

* revert deleteByPid

* Work on test fixes

* Test fixes

* Test fixes

* Another test fix

* Test fix

* Work on tests

* Test fixes

* All tests passing locally

* Fix test failure

* FIx build error

* Rename usages of HibernateDialectProvider -> HibernatePropertiesProvider

* Update ngram of token filters

* Tidying

* subvert the purpose of hibernate elastic props builder to inject template

* dead space

* Rename changed class

Co-authored-by: jamesagnew <jamesagnew@gmail.com>
2021-01-05 17:56:59 -05:00
jamesagnew d20b07c78e Update license headers 2021-01-01 15:50:24 -05:00
jamesagnew f30999b053 License header updates 2021-01-01 15:07:23 -05:00
James Agnew 1eae5db374
autoCreatePlaceholderReferenceTargets true breaks multitenancy (#2215)
* Fix #2209 - autoCreatePlaceholderReferenceTargets true breaks multi-tenancy

* Add changelog

* Address fixme
2020-12-03 08:53:37 -05:00
James Agnew c309737166
Allow reading from multiple partitions (#2198)
* Partitioning rework

* Work on partition improvements

* Partition updates

* Work on partitiong

* Test fixes

* Add docs

* Add changelog

* Resolve FIXME

* Test fixes

* Test fixes

* Test fixes

* Compile fix

* Fix compile error

* Test fix

* Test fixes
2020-11-30 17:59:52 -05:00
James Agnew 8b65db0c98
Improve error message on unique constraint violation (#2182)
* Improve error message on unique constraint violation

* Add changelog

* Test fixes

* Test fix
2020-11-19 21:20:59 -05:00
jamesagnew 0c31741eec Version bump to 5.3.0-SNAPSHOT 2020-11-18 14:52:43 -05:00
jamesagnew 4d441ad7f2 Version bump to 5.2.0 2020-11-18 06:30:20 -05:00
IanMMarshall bf9e02bc16
Merge pull request #2164 from jamesagnew/im_20201029_ig_package_long_description
Truncate package descriptions that are longer than 200 characters.
2020-11-10 12:01:53 -05:00
James Agnew 63b7b379c2
Improve ValueSet filtering (#2162)
* Improve filter search

* Filter improvements

* Tests passing

* Test fixes

* Fix transaction filter

* Add changelog

* Test fix

* Update hapi-fhir-base/src/main/resources/ca/uhn/fhir/i18n/hapi-messages.properties

Co-authored-by: Diederik Muylwyk <diederik.muylwyk@gmail.com>

* Update hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/term/BaseTermReadSvcImpl.java

Co-authored-by: Diederik Muylwyk <diederik.muylwyk@gmail.com>

* Resolve FIXME

* Test fix

* Update hapi-fhir-jpaserver-base/src/test/java/ca/uhn/fhir/jpa/term/ValueSetExpansionR4Test.java

Co-authored-by: Diederik Muylwyk <diederik.muylwyk@gmail.com>

Co-authored-by: Diederik Muylwyk <diederik.muylwyk@gmail.com>
2020-11-10 11:01:13 -05:00
ianmarshall 881193cf24 Truncate package descriptions that are longer than 200 characters. 2020-11-09 16:19:05 -05:00
jamesagnew 53c23b8d9b Add method to stringutil 2020-10-27 11:29:16 -04:00
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
jamesagnew 3ba80de717 Add to date equals comparison 2020-10-11 15:35:28 -04:00
James Agnew 2134d40f1c
Account for timezones in lastUpdated search (#2113)
* Add test

* Fix

* Add changelog

* Test fixes

* Test fix

* Test fixes

* Resolve fixme

* Test fixes

* Remove debug logs

* Try to get CI tests passing again
2020-10-09 07:52:46 -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
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
James Agnew 3098affccb
Update path when updating resource links (#2007)
* fix resource link index reuse bug

* Resolve merge conflicts

Co-authored-by: Ken Stevens <khstevens@gmail.com>
2020-07-28 21:40:56 -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
James Agnew 6fb6675b1e
Resolve validation errors to ValueSet with UCUM (#1948)
* Add tests for validation errors

* Work on validation errors

* Bump core version

* Fix validation errors

* Test fixes

* Add changelog

* Test fix

* Test fix

* Test fix
2020-07-05 19:59:21 -04:00
James Agnew f356c7c385
Migrate to JUnit5 (#1952)
* Work on junit

* Work on junit 5

* Work on junit 5

* Bump errorprone vcersion

* Work on tests

* Junit 5 tweaks

* Fixes

* Work on tests

* Work on junit5

* Work on tests

* Test fixes

* Work on junit5

* Test work

* Get junit5 working

* Test fix

* Work on tests

* WOrk on tests

* Work on tests

* fixes

* Compile fix

* One more tweak

* Compile fix

* Add changelog

* Fix compile error

* Compile fix
2020-07-04 18:28:16 -04:00
Ken Stevens 714bd6216e
Empi 70 phonetic indexing (#1941)
* start with failing test

* test passes with fixmes

* javadoc and config

* pre-review cleanup

* generalize encoding

* test passes, but indexing needs to be optimized

* test passes, but indexing needs to be optimized

* step 1 of optimization.  big refactor of all predicates

* step 2 of optimization: determine phonetic encoder at time of RuntimeSearchParam creation

* integrated new phonetic encoders into empi

* phonetic search implemented

* IT passes

* pre-review cleanup

* final pre-review cleanup

* final pre-review cleanup

* Fix compile error

Co-authored-by: James Agnew <jamesagnew@gmail.com>
2020-06-30 17:36:54 -04:00
jamesagnew 2cdef055aa Missed commit on #1951
Squashed commit of the following:

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

    Address review comments

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

    Fix LGTM warning

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

    Test fix

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

    Add changelog

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

    Bundle transmission

commit 88bd4abf0c
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 7cde945281
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Mon Jun 29 17:10:33 2020 -0400

    Work on seed bundles

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

    Work on subscriptions

commit 52addcff59
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 64a9eaa4de
Author: jamesagnew <jamesagnew@gmail.com>
Date:   Wed Jun 17 18:32:17 2020 -0400

    Start work

commit f74eba5397
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 fa4bbe3685
Allow search criteria as subscription delivery mechanism (#1951)
* Terser should create correct Enumeration on create

* Start work

* Work on subscriptions

* Work on seed bundles

* Bundle transmission

* Add changelog

* Test fix

* Fix LGTM warning
2020-06-30 14:29:09 -04:00
James Agnew 6825d2fcf0
Reduce DB roundtrips for revincludes (#1937)
* Reduce DB roundtrips for revincludes

* Add changelog
2020-06-23 16:26:04 -04:00
jamesagnew 05df4f0827 Migration task updates 2020-06-10 09:56:49 -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 9696af5dc0 Changed observation indexing to bypass hibernate search and removed Observation index tables. 2020-06-04 13:20:42 -04:00
ianmarshall 6e507bf642 Changed observation indexing to bypass hibernate search and removed Observation indexing tables. 2020-06-04 13:10:06 -04:00
jamesagnew 0487727fb1 Merge branch 'master' of github.com:jamesagnew/hapi-fhir 2020-06-02 18:21:12 -04:00
jamesagnew 75a74bdd38 License headers 2020-06-02 18:20:56 -04:00
jamesagnew 201c3a6187 Merge branch 'master' of github.com:jamesagnew/hapi-fhir 2020-06-02 07:47:06 -04:00
jamesagnew 760d19cf89 Prep for 5.0.2 2020-06-02 07:46:57 -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 7f72305f57
Improve Period range indexing (#1873)
* Fix #1871 - Handle period range searches better

* Add changelog

* FIx tests

* Add test logging

* Address review comments
2020-05-28 08:56:43 -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 1e554731bb Additional cleanup and test fixes. 2020-05-25 18:25:25 -04:00
ianmarshall 816f409a8a Re-factor lastn entities to locate them is same package as other Search Parameter entities. 2020-05-25 11:37:01 -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
Tadgh d1b963321a
MVP EMPI implementation (#1857)
EMPI Initial Implementation (still plenty of known gaps)
2020-05-22 15:03:20 -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
ianmarshall d2b54d6203 Merge remote-tracking branch 'remotes/origin/master' into im_20200316_lastn_operation_elasticsearch
# Conflicts:
#	hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/dao/SearchBuilder.java
2020-05-19 15:20:06 -04:00
jamesagnew 52c8e3551c Version bump to 5.1.0-SNAPSHOT 2020-05-15 14:43:32 -04:00