Add support for _total, _count, and _offset to Lucene backend.
Co-authored-by: Michael Buckley <michael.buckley@smilecdr.com>
Co-authored-by: juan.marchionatto <juan.marchionatto@smilecdr.com>
* 3534 - Added new multi-column Index and removed existing single-column Index.
* 3534 - Added PARTITION_ID to the new Index.
* Change migrations to have no timeout.
Co-authored-by: Michael Buckley <michael.buckley@smilecdr.com>
* Implementation, parameterize test, changelog
* Bump spring framework for a vuln while i'm in here
* Fix number of changelog
* Add IS NOT NULL to query
* Preliminary test work to generate forward-reference data
* Complete implementation
* Permit Practitioner/Organization as forward references in bulk export group params
* Wip
* Fix test
* Add error number
* Address review comments
* Update assert
* implement GraphQLQueryBodyParameter and GraphQLQueryBody annotation
* GraphQLQueryBodyParameter to recognize application/graphql
* fix 500 error on method without @GraphQLQueryBody
* refactor to processGraphQlGetRequest and processGraphQlPostRequest
* add testGraphPostContentTypeJson and testGraphPostContentTypeGraphql to GraphQLR4RawTest
* fix imports
* implement GraphQL Connection
* add tests
* add cacheControlDirective and requestDetails to registerSearch
* fix tests and fix bugs
* set error code
* Refactor to restore LGTM functionality
* Compile fix
* Work on cleanup
* Attempt to restore LGTM
* Work on tests
* Fixes
* Build fixes
* Build fix
* Test fix
* Test fixes
* Work on build
* License header updates
* Test fixes
* Test fixes
* License header
* Test fix
* Test fix
* Test fixes
* Restore LGTM
* Fix azure
* Disable test
* Test fixes
* Test cleanup
* Build fix
* Build fix
* Test fix
* Test fix
* Test fixes
* markers for new quantity hibernate search support
* Add quantity search
* Add normalized (canonical) quantity search
* Add comment
* Use double values instead of BigDecimal to avoid scaling
* Remove multiple case labels which are not supported until source version 14
* Remove switch rules which are not supported until source version 14
* Use constant for error message used in tests
* A failing test for multiple indexed quantity paths
* Disallow dirtying context for nested classes
* failing test for normalized units
* Make sp.value-quantity.quantity a nested structure to handle correlated queries for code and value.
Save units for canonical case and consider them when querying.
Collapse normalized sub-structure under *.quantity.
* Nest sp.value-quantity instead of sp.value-quantity.quantity for compatibility with other nested types (IE. token)
* Comment out debug statements
* Update hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/dao/search/ExtendedLuceneClauseBuilder.java
Co-authored-by: Olivia You <46392181+oliviayou@users.noreply.github.com>
* Add test for nested correlated quantity query
* Address MR comments
* Add proper handling of or query predicates
* Use positive conditions for better readability
* Add tests to validate behavior of combined and and or clauses, including some making no sense but still syntactically correct.
* Only consider normalized quantity searching if ModelConfig search level is NORMALIZED_QUANTITY_SEARCH_SUPPORTED
Co-authored-by: juan.marchionatto <juan.marchionatto@smilecdr.com>
Co-authored-by: jmarchionatto <60409882+jmarchionatto@users.noreply.github.com>
Co-authored-by: Olivia You <46392181+oliviayou@users.noreply.github.com>
* committed changes discussed at tasking
* Changed the subscription message to store the request partition
* modified mdm subscription loader to create a cross partition subscription in the default partition if multitenancy is enabled
* Fix errors when running Multitenant IT for mdm
* Added partition id to mdm golden resource search and creating/updating golden resource
* added partition id column to the mdm link table
* Added partition id of the source resource to partition id column of the mdm link table
* broken build
* working -links, missing hapi tests
* Fixed the mdm link db table due to feedback
* added IT for create link mdm operation, also added changes to pass the IT
* Fixed test for create mdm links, added test for update mdm link on partitioned server
* changed mdmLink search from searchbyExample to criteriaBuilder, added partitionHelperSvc to determine partition
* added test for merge golden resource and search golden resource on partitioned server
* added unit test for not duplicate on partitioned and non-partitioned server
* added criteriabuilder search and tests
* code cleanup
* added partition support to -merge-golden-resources operation
* test cleanup
* fixed operations with multitenancy
* added test for mdm clear operation
* added waiting for batch job to finish in mdm clear operation test
* added query to dao to support partitioned server for mdm clear operation
* resolve mistake from merge conflict
* added mdm-submit operations, also fixed paging for -query
* added partitionIds constant
* fixed build issue where there was no Code.msg in mdm partition exceptions
* code review fixes
* fix broken test, also fix a bug where query link could not query by linkSource properly
* fix test stubbing
* bump hapi version to 6.0.0-PRE10-SNAPSHOT
Co-authored-by: Ken Stevens <khstevens@gmail.com>
Co-authored-by: Steven Li <steven@smilecdr.com>
Co-authored-by: Long Ma <long@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
* Version bump
* Add implementation, testing, and changelog
* Add backport info, make aware of 6_0_0
* add jira ref
* Fix test
* Add versionenum
* Bump dep for spring, add changelog, add versionenum, add changelog folder
* Actually do the version bump
* remove doubleimport
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>
* Add versionenum, bump maven version
* failing tests
* more logs
* Add more test cases, not passing
* fixed the double chain with contained resource second case
* clean up a bit
* add tests for qualifiers
* force the resource table to be the root of the query if we might be traversing a contained reference
* tidy up
* tests for longer chains
* changelog
* code review feedback
* backport changelog
* Add version.yaml
* [2935] Escape "%" in like expression
* Add backport to changelog
* Bumping version number. Update VersionEnum to support 5.5.3
* Jr 20211013 chained references (#3079)
* Create index entries for outbound references of contained resources
* build query for chained reference
* fix case where the contained reference is an explicit id rather than a continued chain
* fix contained index to use path names not search param names
* make qualified search work
* cleanup and changelog
* code review
* fix broken tests
* add imports from bad merge
* Add forgotten import from merge
* Jr 20211018 chained references 2 (#3099)
* Create index entries for outbound references of contained resources
* build query for chained reference
* fix case where the contained reference is an explicit id rather than a continued chain
* fix contained index to use path names not search param names
* make qualified search work
* cleanup and changelog
* recurse while creating indexes on contained resources
* double link both contained
* longer contained subchains
* adding some failing test cases to illustrate the limitations of qualified searches
* clean up merge cruft
* changelog
* Jr 20211021 chained references 3 (#3107)
* Create index entries for outbound references of contained resources
* build query for chained reference
* fix case where the contained reference is an explicit id rather than a continued chain
* fix contained index to use path names not search param names
* make qualified search work
* cleanup and changelog
* recurse while creating indexes on contained resources
* double link both contained
* longer contained subchains
* adding some failing test cases to illustrate the limitations of qualified searches
* clean up merge cruft
* changelog
* create recursive resource links
* add test coverage for a more complicated case
* changelog
* remove unnecessary check for _contained flag
* fix broken tests
* Add backport information
* Bump version, add version enum
* begin with failing test
* fix bug
* change log
* change log
* Add backport information
* Improve performance of chained queries into contained resources (#3312)
* 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
* Add backport info
* Bump version
* Fix errors due to merge
* Bump license year
* Add folder for release version
* Version bump
* 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
* Add backport info
* add new folder for version
* Add missing message
* New version enum, and folder
* Version bump
* Bump spring lib version
* Tidy versions
* Remove test
Co-authored-by: Ken Stevens <khstevens@gmail.com>
Co-authored-by: Jason Roberts <jason.roberts@smilecdr.com>
Co-authored-by: katie_smilecdr <katie@smilecdr.com>
Co-authored-by: JasonRoberts-smile <85363818+JasonRoberts-smile@users.noreply.github.com>
* 2991 - WIP, starting to implement test to reproduce the issue.
* Adding capability to extract url & version from the valueSet.include.url
* parsing codeSystem canonical URL to extra version if required.
* WIP
* Cleaning up the test.
* Replacing hard code value with variable.
* Removing non required test.
* Modifications following first code review.
* Further modifications following first code review.
* Refining the test for better code coverage.
* Prefixing the change log file name with the hapi-fhir issue number.
Co-authored-by: Etienne Poirier <etienne.poirier@smilecdr.com>
* added failing tests
* tests pass
* Added changelog and javadocs
* fixed package tests for resources with no active field
* adding jira ticket number
* feedback from code review'
* switching to old style switch statement'
* moved classes
* Bump version
* licensing
* Repackage, fix messages
* reject empty streams
* Remove dead import
* Version bump
* Fix up test to actually return a data stream
* Move null binary svc to storage
* Improve batch2 error handling
* Build fixes
* Work on reindexing
* Test fixes
* Account for gzipped contents
* License header updates
* Register VS operations on public server
* Test fix
* Build fix
* Remove animal sniffer plugin
* Compile fix
* fix mongo date search with the NOT_EQUALS prefix
* add test & changelog
* add some unit tests
* rename unit test names to be more clear
Co-authored-by: olivia-you <olivia.you@smilecdr.com>
* Store resource data inline with lucene/es resourcetable index.
* Use fulltextsearch to load resources if resource inlined in ES/Lucene index
Co-authored-by: Jaison Baskaran <jaisonb@gmail.com>