* 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
* init rev
* fix build
* Tweaked the POM config settings and also added some dependency exclusions (commented out for now).
* More re-factoring of the CQL Unit Tests.
* Removed a LogMessages.html file and a minor Unit Test change.
* Unit Tests.
* added debug logging to troubleshoot the dao that has no name
* added debug logging to troubleshoot the dao that has no name
* workaround to get past null dao resourceName issue
* fix jsons to get test to pass. Test still fails with library id problem
* gitignore
* gitignore
* test passes! Woohoo!
* undo troubleshooting logging
* added timer and logging.
* added asserts and time multiple evaluations and measure the average
* readme
* adding explanations
* added more explanatory notes
* measure 2 patients
* move pom to use cqf snapshot
* roughed out cache
* roughed out cache
* Added code to VersionChangeCache class.
* added tests
* added polling test
* wrote init version
* wrote init version
* optimized versioncache
* worked on getting tests to pass
* redesigned interfaces
* all tests pass
* fixmes
* fixmes
* rename param
* Added Unit Tests.
* javadoc
* Fixed the 2-Patient Unit Test.
* More Unit Test work.
* make ResourceVersionMap immutable
* Fixed a Unit Test that was failing intermittently by adding a new way to refresh the cache.
* Use a new method called doRefreshAllCaches(0) to force a refresh and have all Listeners called immediately.
* Cleaned up IVersionChangeListenerRegistry interface to make methods more clear and resolved all Unit Tests.
* disabled tests
* disabled tests
* removed unused test method
* fixed refresh logic and added asserts
* moved cache so it can be used by searchparamregistry
* Updated the Cql Unit Tests to be properly configured for Dstu3 or R4.
* started rewriting SearchParamRegistryImpl to use new cache
added init method to listener interface
* added fixmes
* adding tests
* tests pass
* added tests
* Fixed the way CqlProviderFactory Autowires Beans so it can work with both Dstu3 and R4 contexts.
* moar tests
* fix test
* work tests
* reverting unneccessary refactors
* undo unneccessary import changes to reduce MR size
* undo unneccessary import changes to reduce MR size
* Unit Test fixes...more to come...
* add unregister
* fix tests
* Changed ResourceVersionCache to use a Map of Maps.
* searchparam test
* test passes
* resolved fixme
* fixmies
* strengthen test asserts
* More Unit Test changes and added some FIMXME items.
* changed from long to changeresult
* renamed VersionChange -> ResourceChange
* fixed delete bug
* organize imports
* fix test
* add update test
* add test reset function
* fix stack overflow
* fix startup race condition (might still be intermittent)
* found the problem. delete doesn't work because we can't look up the deleted resource to find out what its name is
* fixed regression
* abandoned idea of incrementally updating searchparam registry. Rebuilding every time--it doesn't change that often.
* fix test
* begin with failing test
* test passes
* fixmes and javadoc
* fix test
* fixme
* fix test
* whack-a-mole. Either subs pass or cql passes. Something's fishy with the FhirContext
* fix subscription test initialization
* fix method name
* Re-factored the CqlProvider Unit Tests.
* changed ResourceChange API
* add interface
* add interface
* fix test
* add schedule test
* add doc
* init rev
* FIXME
* modify FhirContext change
* change fhirContext.getResourceTypes to lazy load
* converted subscriptions
* converted subscriptions
* begin with failing test
* test passes
* fix test
* test coverage
* test coverage
* test coverage
* test coverage
* good coverage now
* pre-review cleanup. I think I found a bug.
* moved cache into listener entry
tests pass with fixmes
* fix test
* fix test
* fix test
* fixme
* FIXMEs
* merge cache and registry
* method reorg
* javadoc
* javadoc done. all FIXMEs resolved.
* change log
* changes needed by cdr
* spring config cleanup
* james feedback
* james feedback
* might not work. Try moving resourcechangeconfig into searchparam config
* merge ResourceChangeListenerRegistryConfig.java into SearchParamConfig
* fix test
* fix SubscriptionLoader
* fix SubscriptionLoader
* create ResourceVersionMap from resources
* added cache handle interface
* fix test
* javadoc
* fix test
* fix test
* James feedback: clone searchparametermap
* fix startup
* fix test
* fix test
* fix intermittent
* pre-review cleanup
* FIXME
* final FIXME yay!
* Address a couple of my own reviw comments
Co-authored-by: Kevin Dougan <kevin.dougan@smilecdr.com>
Co-authored-by: jamesagnew <jamesagnew@gmail.com>
* 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>
* 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>
* RDF Support in HAPI FHIR
* Ability to read/write FHIR resources as RDF (turtle serialization)
* Test suite to test roundtrip-ability of RDF parser
* Add null checks to appease LGTM
* Correct null check logic
* [(release_3_7_SSE)] cache timezone since timezone.gettimezone is static synchronized and performs poorly
* [(fixgettimezoneperformanceissue)] fiximport
* 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
* add rule version
* add rule version
* Rough in model for Golden Record.
* Test Link Rule Version
* add eid match boolean
* added new fields to EmpiLink to provide more information about how the link was created
* add logging to check an edge case
* all tests pass
* wip with failing tests
* tests pass
* FIXME
* optimize imports
* test score in provider output
* FIXME
* FIXME
* Fix jpa test app context
* fix migration string length
* review feedback param name
* review feedback javadoc
* review feedback javadoc
* bean config reorganization for cdr
* add more tests
* 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
* 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
* 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
* 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
* 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>
* 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
* 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
* 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
The description for SERVER_INCOMING_REQUEST_PRE_HANDLED referred to itself rather than to SERVER_INCOMING_REQUEST_PRE_PROCESSED. Along with this corrected begin into begun.
* Work on multitenancy
* Work on multitenancy
* Work on multitenancy
* Add columns
* Work on multitenancy
* Work on muiltitenancy
* Work on multitenancy
* Work on uniques
* Work on multitenancy
* Work on multitenancy
* Work on multitenancy
* More work on multitenancy
* Work on multitenancy
* Multitenancy work
* Work on multitenancy
* Work on multitenancy
* Work on multitenancy
* Work on multitenancy
* Work on docs
* Work on multitenancy
* Work on docs
* DOcs work
* Tenancy docs
* Work on docs
* Finish docs
* Add changelog
* Rename config
* Add migration tasks
* Fix typo
* Migration fix
* One more migration fix
* A couple more migration fixes
* Docs cleanup
* Work on docs
* Bump boot version
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa/partitioning.md
Co-Authored-By: Ken Stevens <khstevens@gmail.com>
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa/partitioning.md
Co-Authored-By: Ken Stevens <khstevens@gmail.com>
* Work on review comments
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa/partitioning.md
Co-Authored-By: Ken Stevens <khstevens@gmail.com>
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa/partitioning.md
Co-Authored-By: Ken Stevens <khstevens@gmail.com>
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa/partitioning.md
Co-Authored-By: Ken Stevens <khstevens@gmail.com>
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa/partitioning.md
Co-Authored-By: Ken Stevens <khstevens@gmail.com>
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa/partitioning.md
Co-Authored-By: Ken Stevens <khstevens@gmail.com>
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa/partitioning.md
Co-Authored-By: Ken Stevens <khstevens@gmail.com>
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa/partitioning.md
Co-Authored-By: Ken Stevens <khstevens@gmail.com>
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa/partitioning.md
Co-Authored-By: Ken Stevens <khstevens@gmail.com>
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa/partitioning.md
Co-Authored-By: Ken Stevens <khstevens@gmail.com>
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa/partitioning.md
Co-Authored-By: Ken Stevens <khstevens@gmail.com>
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa/partitioning.md
Co-Authored-By: Ken Stevens <khstevens@gmail.com>
* Update hapi-fhir-docs/src/main/resources/ca/uhn/hapi/fhir/docs/server_jpa/schema.md
Co-Authored-By: Ken Stevens <khstevens@gmail.com>
* Update hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/dao/index/IdHelperService.java
Co-Authored-By: Ken Stevens <khstevens@gmail.com>
* Address review comments
* Compile fx
* Test fixes
* One more bugfix
* Update operation name
* Add one more constant
* Roll back a change that was causing test failures
* Test fixes
Co-authored-by: Ken Stevens <khstevens@gmail.com>
* add debug log
* add debug log to value iteration
* fix _filter issue on /$graphql, fix dash and underscore issue on /$graphql, and give helpful error message on wrong argument.
* remove debug logging
* implement JpaStorageServicesTest
* Add cascading delete to client
* Add changelog
* Client delete should return MethodOutcome
* Rerturn more appropriate type for delete operations
* Refactor cascade detection to be reusable