Add optimistic write lock to $reindex operation to prevent indexing stale data.
Introduce Lockstep Phaser to make testing easier
Add 1 query to every resource reindex :-(
* First commit: Add userSelected and version to ResourceTag and ResourceHistoryTag. Add migration step to migration tasks. For some reason SchemaMigrationTest is failing.
* Fix nullability, update constructors, truncate versions over 30 chars.
* yay we're done just cleanup
* Checkpoint for recent changes.
* Last commit before pausing work.
* Fix bad code to find the version, tweak unit test pid ID to versionless and add TODO about why is update part of the test not passing?
* Fix bad code in extractTagsRi(): Make it leverage the IBaseCoding variable already in the for loop. Fix bad code in populateResourceMetadataRi(). Leverage the existing BaseTag and use it to populate the IBaseCoding tag instance instead. Add more and better assertions in the unit test.
* Merge rel_6_4 in
* Current state for pairing
* Fix CodingDt.getUserSelected method return code in tinder
* Complete migration task and cleanup
* Remove missed fixme
* Bump version temporarily to use it for building core lib
* Use primitive for compatibility with tinder generated CodingDt
* Copyright updates
* Hack to bypass NPE generated by bogus tinder-generated code
* Simplify by removing temporary deprecations as version bump is needed anyway because of TagDefinition entity changes
* Adjust tests
* Fix migration task
* Add test to show problem with tinder generated BooleanDt
* More test adjustments
* Improve BooleanDt NPE avoidance
* Update core dep
* Reverse Juan CVE VersionEnumTest changes.
* Fix unit test.
---------
Co-authored-by: Ken Stevens <ken@smilecdr.com>
Co-authored-by: juan.marchionatto <juan.marchionatto@smilecdr.com>
Co-authored-by: Tadgh <garygrantgraham@gmail.com>
* Improve performance on bulk export
* Add changelog
* Start working on cleaned up reducer
* Clean up batch calls
* Work on issues
* Build fixes
* Test fixing
* Test fixes
* Work on progress
* Add changelog
* Build tweak
* Fixes
* Fixes
* Fix compile
* Test fixes
* Bump to 6.4.2-SNAPSHOT
* Fix compile
---------
Co-authored-by: Tadgh <garygrantgraham@gmail.com>
* Add IbaseCoding changes, and tinder changes
* Fix up tag definition
* converter addition
* Fix unit test and add changelog.
* Add jira to changelog.
---------
Co-authored-by: Tadgh <garygrantgraham@gmail.com>
* First commit: Create new branch from the release branch with changes from James' branch. This probably won't compile as the work is incomplete.
* Second round of changes from integrating James' branch.
* Mark most test failures with TODOs.
* Add whitespace
* Add changes to FhirPathR4 to set FHIRPathEngine to non-strict FP evaluation.
* Fix CreatePackageCommandTest to assert null instead of empty string. Comments on tests that fail due to the double-quote encoding problem.
* Downgrade to core 5.6.97.
* Fix another test and remove TODOs.
* Fix changelog.
* Clean up some erroneous changes and TODOs.
---------
Co-authored-by: Tadgh <garygrantgraham@gmail.com>
* typedbundleprovider getallresources override
* added test to immunization tests that validates pagination does not result in null pointer if over default queryCount
* moved HapiFhirDal test to its own test class
* removed unused imports
* Update to use JpaStorageSettings
* adding changelog for issue 4551
* fix changelog spacing
* changelog type to fix
---------
Co-authored-by: justin.mckelvy <justin.mckelvy@smilecdr.com>
Co-authored-by: Jonathan Percival <jonathan.i.percival@gmail.com>
* failing test
* fix + changelog
* tweak
* add method to IJobPersistence to use a Stream
* tweak
* tweak
* decrease test time
* clean up
* code review comments
* version bump
* Increase timeout limit to match BulkExportUseCaseTest
* shorten test
* maintenance pass
* add logging
* Revert "add logging"
This reverts commit b0453fd953.
* Revert "maintenance pass"
This reverts commit bbc7418d51.
* test
* trying to fix BulkDataExportTest testGroupBulkExportNotInGroup_DoesNotShowUp
* shorten tests
* logging
* move test location
* fixes a regression caused my change in hapi-fhir
* timeout
* Revert "fixes a regression caused my change in hapi-fhir"
This reverts commit 4b58013149.
* testing
* Revert "testing"
This reverts commit aafc95c2f3.
---------
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-mbp.home>
* adding a test
* fail in the case of ref enforce on type and on write and autocreate are all true
* update to code
* removing a line
* cleanup
* removing check on urn
* changing just to trigger a build
* adding a comment to the pom
* updating test for better information
---------
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-mbp.home>
* First commit: Scheduled batch 2 bulk export job delete and binary, incomplete mock-based unit test, and a mess of TODOs and code that needs to be deleted.
* Refine solution and add a concrete unit test but still work to do.
* Comment out code in cancelAndPurgeAllJobs() and see if it breaks the pipeline.
* Unit tests complete. New Msg code for new IJobPersistence.fetchInstances() method. Cleanup TODOs and add others.
* Finish final touches on implementation.
* Add changelog.
* Various cleanup.
* Code review feedback.
* Small tweak to changelog.
* Last code review tweak.
* Address more code review comments.
* Reverse changes to consider work chunks. Add a constant for write-to-binary.
* fix bug where FINALIZE jobs are not cancellable
* moved reduction step to message hander
* moving reduction step to queue
* addingchangelog
* cleaning up
* review fixes
* review fix'
---------
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-mbp.home>
* First commit: Make SubscriptionValidatingInterceptor aware of which Pointcut is being called. In validatePermissions(), skip determinePartition() if the Pointcut is STORAGE_PRESTORAGE_RESOURCE_UPDATED. Fix resulting compile errors in various unit tests.
* Fix/enhance unit tests. Mark methods as deprecated instead of deleting them. Add proper error code. Complete changelog.
* Remove erroneous TODOs and tweak the validation logic.
* Enhance unit tests and fix changelog.
* Testpage improvements
* Work on tests
* Split fragment out
* Reformat command buttons
* Work on web admin console
* Work on testpage
* Fixes
* Fix
* Test fixes
* Improve examples
* Test fixes
* Address review comment
* jm wrong bundle entry url (#4213)
* Bug test
* here you go
* Generate relative URIs for bundle entry.request.url, as specified
* Point jira issue in changelog
* Adjust tests to fixes
Co-authored-by: juan.marchionatto <juan.marchionatto@smilecdr.com>
Co-authored-by: Tadgh <garygrantgraham@gmail.com>
* improved logging (#4217)
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* Rel 6 1 3 mergeback (#4215)
* Bump for CVE (#3856)
* Bump for CVE
* Bump spring-data version
* Fix compile
* Cut over to spring bom
* Bump to RC1
* remove RC
* do not contrain reindex for common SP updates (#3876)
* only fast-track jobs with exactly one chunk (#3879)
* Fix illegalstateexception when an exception is thrown during stream response (#3882)
* Finish up changelog, minor refactor
* reset buffer only
* Hack for some replacements
* Failure handling
* wip
* Fixed the issue (#3845)
* Fixed the issue
* Changelog modification
* Changelog modification
* Implemented seventh character extended code and the corresponding dis… (#3709)
* Implemented seventh character extended code and the corresponding display
* Modifications
* Changes on previous test according to modifications made in ICD10-CM XML file
* Subscription sending delete events being skipped (#3888)
* fixed bug and added test
* refactor
* Update for CVE (#3895)
* updated pointcuts to work as intended (#3903)
* updated pointcuts to work as intended
* added changelog
* review fixes
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
* 3904 during $delete expunge job hibernate search indexed documents are left orphaned (#3905)
* Add test and implementation
* Add changelog
* 3899 code in limits (#3901)
* Add implementation, changelog, test
* Update hapi-fhir-jpaserver-test-utilities/src/test/java/ca/uhn/fhir/jpa/provider/r4/ResourceProviderR4Test.java
Co-authored-by: Ken Stevens <khstevens@gmail.com>
Co-authored-by: Ken Stevens <khstevens@gmail.com>
* 3884 overlapping searchparameter undetected rel 6 1 (#3909)
* Applying all changes from previous dev branch to current one pointing to rel_6_1
* Fixing merge conflict related to Msg.code value.
* Fixing Msg.code value.
* Making checkstyle happy.
* Making sure that all tests are passing.
* Passing all tests after fixing Msg.code
* Passing all tests.
Co-authored-by: peartree <etienne.poirier@smilecdr.com>
* 3745 - fixed NPE for bundle with duplicate conditional create resourc… (#3746)
* 3745 - fixed NPE for bundle with duplicate conditional create resources and a conditional delete
* created unit test for skip of delete operation while processing duplicating create entries
* moved unit test to FhirSystemDaoR4Test
* 3379 mdm fixes (#3906)
* added MdmLinkCreateSvcimplTest
* fixed creating mdm-link not setting the resource type correctly
* fixed a bug where ResourcePersistenceId was being duplicated instead of passed on
* Update hapi-fhir-jpaserver-mdm/src/test/java/ca/uhn/fhir/jpa/mdm/svc/MdmLinkCreateSvcImplTest.java
Change order of tests such that assertEquals takes expected value then actual value
Co-authored-by: jdar8 <69840459+jdar8@users.noreply.github.com>
* added changelog, also changed a setup function in test to beforeeach
Co-authored-by: Long Ma <long@smilecdr.com>
Co-authored-by: jdar8 <69840459+jdar8@users.noreply.github.com>
* Fix to the issue (#3855)
* Fix to the issue
* Progress
* fixed the issue
* Addressing suggestions
* add response status code to MethodOutcome
* Addressing suggestions
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* Fix for caching appearing broken in batch2 for bulkexport jobs (#3912)
* Respect caching in bullk export, fix bug with completed date on empty jobs
* add changelog
* Add impl
* Add breaking test
* Complete failing test
* more broken tests
* Fix more tests'
* Fix paging bug
* Fix another brittle test
* 3915 do not collapse rules with filters (#3916)
* do not attempt to merge compartment permissions with filters
* changelog
* Rename to IT for concurrency problems
Co-authored-by: Tadgh <garygrantgraham@gmail.com>
* Version bump
* fix $mdm-submit output (#3917)
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* Gl3407 bundle offset size (#3918)
* begin with failing test
* fixed
* change log
* rollback default count change and corresponding comments
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* Offset interceptor now only works for external calls
* Initialize some beans (esp interceptors) later in the boot process so they don't slow down startup.
* do not reindex searchparam jobs on startup
* Fix oracle non-enterprise attempting online index add (#3925)
* 3922 delete expunge large dataset (#3923)
* lower batchsize of delete requests so that we do not get sql exceptions
* blah
* fix test
* updated tests to not fail
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
* add index
* Fix up colun grab
* Revert offset mode change
* Revert fix for null/system request details checks for reindex purposes
* Fix bug and add test for SP Validating Interceptor (#3930)
* wip
* Fix uptests
* Fix index online test
* Fix SP validating interceptor logic
* Updating version to: 6.1.1 post release.
* fix compile error
* Deploy to sonatype (#3934)
* adding sonatype profile to checkstyle module
* adding sonatype profile to tinder module
* adding sonatype profile to base pom
* adding final deployToSonatype profile
* wip
* Revert version enum
* Updating version to: 6.1.1 post release.
* Add test, changelog, and implementation
* Add backport info
* Create failing test
* Implemented the fix, fixed existing unit tests
* added changelog
* added test case for no filter, exclude 1 patient
* wip
* Add backport info
* Add info of new version
* Updating version to: 6.1.2 post release.
* bump info and backport for 6.1.2
* Bump for hapi
* Implement bug fixes, add new tests (#4022)
* Implement bug fixes, add new tests
* tidy
* Tidy
* refactor for cleaning
* More tidying
* Lower logging
* Split into nested tests, rename, add todos
* Typo
* Code review
* add backport info
* Updating version to: 6.1.3 post release.
* Updating version to: 6.1.3 post release.
* removed duplicate mention of ver 6.1.3 in versionEnum
* backport pr 4101
* mdm message key (#4111)
* begin with failing test
* fixed 2 tests
* fix tests
* fix tests
* change log
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* backport 6.1.3 docs changes
* fixed typo on doc backport message
* fix test breaking
* Updating version to: 6.1.4 post release.
* wip
Co-authored-by: JasonRoberts-smile <85363818+JasonRoberts-smile@users.noreply.github.com>
Co-authored-by: Qingyixia <106992634+Qingyixia@users.noreply.github.com>
Co-authored-by: TipzCM <leif.stawnyczy@gmail.com>
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
Co-authored-by: Ken Stevens <khstevens@gmail.com>
Co-authored-by: Etienne Poirier <33007955+epeartree@users.noreply.github.com>
Co-authored-by: peartree <etienne.poirier@smilecdr.com>
Co-authored-by: kateryna-mironova <107507153+kateryna-mironova@users.noreply.github.com>
Co-authored-by: longma1 <32119004+longma1@users.noreply.github.com>
Co-authored-by: Long Ma <long@smilecdr.com>
Co-authored-by: jdar8 <69840459+jdar8@users.noreply.github.com>
Co-authored-by: Ken Stevens <ken@smilecdr.com>
Co-authored-by: markiantorno <markiantorno@gmail.com>
Co-authored-by: Steven Li <steven@smilecdr.com>
* pin okio-jvm for kotlin vuln (#4216)
* Fix UrlUtil.unescape() by not escaping "+" to " " if this is an "application/..." _outputFormat. (#4220)
* First commit: Failing unit test and a TODO with a vague idea of where the bug happens.
* Don't escape "+" in a URL GET parameter if it starts with "application".
* Remove unnecessary TODO.
* Add changelog.
* Code review feedback on naming. Also, make logic more robust by putting plus and should escape boolean && in parens.
* Ks 20221031 migration lock (#4224)
* started design
* complete with tests
* changelog
* cleanup
* tyop
Co-authored-by: Ken Stevens <ken@smilecdr.com>
* 4207-getpagesoffset-set-to-total-number-of-resources-results-in-inconsistent-amount-of-entries-when-requests-are-sent-consecutively (#4209)
* Added test
* Added solution
* Changelog
* Changes made based on comments
* Fix bug with MDM submit
* fix
* Version bump
* 4234 consent in conjunction with versionedapiconverterinterceptor fails (#4236)
* Add constant for interceptor
* add test, changelog
* Allow Batch2 transition from ERRORED to COMPLETE (#4242)
* Allow Batch2 transition from ERRORED to COMPLETE
* Add changelog
* Test fix
Co-authored-by: James Agnew <james@jamess-mbp.lan>
* 3685 When bulk exporting, if no resource type param is provided, defa… (#4233)
* 3685 When bulk exporting, if no resource type param is provided, default to all registered types.
* Update test case.
* Cleaned up changelog.
* Added test case for multiple resource types.
* Added failing test case for not returning Binary resource.
* Refactor solution.
Co-authored-by: kylejule <kyle.jule@smilecdr.com>
* Add next version
* bulk export permanently reusing cached results (#4249)
* Add test, fix bug, add changelog
* minor refactor
* Fix broken test
* Smile 4892 DocumentReference Attachment url (#4237)
* failing test
* fix
* increase test Attachment url size to new max
* decrease limit to 500
* ci fix
Co-authored-by: nathaniel.doef <nathaniel.doef@smilecdr.com>
* Overlapping SearchParameter with the same code and base are not allowed (#4253)
* Overlapping SearchParameter with the same code and base are not allowed
* Fix existing tests according to changes
* Cleanup dead code and remove related tests
* Version Bump
* ignore misfires in quartz
* Allowing Failures On Index Drops (#4272)
* Allowing failure on index drops.
* Adding changeLog
* Modification to changelog following code review.
Co-authored-by: peartree <etienne.poirier@smilecdr.com>
* Revert "ignore misfires in quartz"
This reverts commit 15c74a46bc.
* Ignore misfires in quartz (#4273)
* Reindex Behaviour Issues (#4261)
* fixmes for ND
* address FIXME comments
* fix tests
* increase max retries
* fix resource id chunking logic
* fix test
* add modular patient
* change log
* version bump
Co-authored-by: Ken Stevens <ken@smilecdr.com>
Co-authored-by: nathaniel.doef <nathaniel.doef@smilecdr.com>
* Set official Version
* license
* Fix up numbers
* Fix up numbers
* Update numbers
* wip
* fix numbers
* Fix test:
* Fix more tests
* TEMP FIX FOR BUILD
* wip
* Updating version to: 6.2.1 post release.
* Add a whack of logging
* wip
* add implementation
* wip and test
* wip
* last-second-fetch
* expose useful method
* remove 10000 limit
* Strip some logging
* Fix up logging
* Unpublicize method
* Fix version
* Make minor changes
* once again on 6.2.1
* re-add version enum
* add folder
* fix test
* DIsable busted test
* Disable more broken tests
* Only submit queued chunks
* Quiet log
* Fix wrong pinned version
* Updating version to: 6.2.2 post release.
* fixes for https://github.com/hapifhir/hapi-fhir/issues/4277 and https… (#4291)
* fixes for https://github.com/hapifhir/hapi-fhir/issues/4277 and https://github.com/hapifhir/hapi-fhir/issues/4276
* Credit for #4291
Co-authored-by: James Agnew <jamesagnew@gmail.com>
* backport and changelog for 6.2.2
* Updating version to: 6.2.3 post release.
* fix https://simpaticois.atlassian.net/browse/SMILE-5781
* Version bump to 6.2.3-SNAPSHOT
* Auto retry on MDM Clear conflicts (#4398)
* Auto-retry mdm-clear on conflict
* Add changelog
* Build fix
* Disable failing test
* Update to 6.2.3 again
* Update license dates
* Dont fail on batch2 double delivery (#4400)
* Don't fail on Batch2 double delivery
* Add changelog
* Update docker for release ppipeline
* Updating version to: 6.2.4 post release.
* Add test and implementation to fix potential NPE in pre-show resources (#4388)
* Add test and implementation to fix potential NPE in pre-show resources
* add test
* WIP getting identical test scenario
* More robust solution
* Finalize Code
* Add changelog, move a bunch of changelogs
* Remove not needed test
* Minor refactor and reporting
* Fix up megeback
* update backport info
* update backport info
* Updating version to: 6.2.5 post release.
* Prevent chunk from returning to in-progress unless it is errorred, in-progress, or queued
* changelog
* Update logger
* Indicate backport
* Add version and upgrade info. add backport
* hapi-fhir side done
* cdr side
* add assert
* add test
* Fix import
* prevent multiple reduction step runs in maintenance run (#4423)
* setting job to inprog to prevent multiple maintenance passes from running reduction steps
* added a new status
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-mbp.home>
* Add backport info
* Fix up tests
* Fix discrepancies
* Fix test
* Version bump
* bump ips
Co-authored-by: jmarchionatto <60409882+jmarchionatto@users.noreply.github.com>
Co-authored-by: juan.marchionatto <juan.marchionatto@smilecdr.com>
Co-authored-by: Ken Stevens <khstevens@gmail.com>
Co-authored-by: Ken Stevens <ken@smilecdr.com>
Co-authored-by: JasonRoberts-smile <85363818+JasonRoberts-smile@users.noreply.github.com>
Co-authored-by: Qingyixia <106992634+Qingyixia@users.noreply.github.com>
Co-authored-by: TipzCM <leif.stawnyczy@gmail.com>
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-MacBook-Pro.local>
Co-authored-by: Etienne Poirier <33007955+epeartree@users.noreply.github.com>
Co-authored-by: peartree <etienne.poirier@smilecdr.com>
Co-authored-by: kateryna-mironova <107507153+kateryna-mironova@users.noreply.github.com>
Co-authored-by: longma1 <32119004+longma1@users.noreply.github.com>
Co-authored-by: Long Ma <long@smilecdr.com>
Co-authored-by: jdar8 <69840459+jdar8@users.noreply.github.com>
Co-authored-by: markiantorno <markiantorno@gmail.com>
Co-authored-by: Steven Li <steven@smilecdr.com>
Co-authored-by: Luke deGruchy <luke.degruchy@smilecdr.com>
Co-authored-by: karneet1212 <112980019+karneet1212@users.noreply.github.com>
Co-authored-by: James Agnew <jamesagnew@gmail.com>
Co-authored-by: James Agnew <james@jamess-mbp.lan>
Co-authored-by: KGJ-software <39975592+KGJ-software@users.noreply.github.com>
Co-authored-by: kylejule <kyle.jule@smilecdr.com>
Co-authored-by: Nathan Doef <n.doef@protonmail.com>
Co-authored-by: nathaniel.doef <nathaniel.doef@smilecdr.com>
Co-authored-by: Jens Kristian Villadsen <jenskristianvilladsen@gmail.com>
Co-authored-by: leif stawnyczy <leifstawnyczy@leifs-mbp.home>
* Failing unit test with a combination of both communication language types plus two passing tests with each language type individually.
* Failing unit test with a combination of both communication language types plus two passing tests with each language type individually.
* Change patient name and birhdate.
* Latest unit test enhancements.
* Preliminary solution that seems to fix the bug and not break module unit tests. Instead of VersionSpecificWorkerContextWrapper.validateCode() returning immediately upon the first OK validation, collect all the OKs and return the first if all codings are OK.
* Try another solution to output the correct error message without breaking other tests.
* Try a solution focused on a ValueSet with a languages URI.
* Working but messy config to toggle the AND/OR behaviour in VersionSpecificWorkerContextWrapper.validateCode(). Need to do a lot of cleanup, unit/integration tests and possibly documentation.
* Working but messy solution to toggle the AND/OR behaviour in VersionSpecificWorkerContextWrapper.validateCode(). Need to do a lot of cleanup, unit/integration tests and possibly documentation.
* Reverse changes that are not needed for the final solution. Also, add a convenient method to ValidationSupportContext and call it.
* Update FhirInstanceValidatorR4Test to set the new logical AND flag. Rename all references to the new flag.
* Revert all classes to master that were changed to call the new constructor. Add new changelog.
* Revert other false param constructor calls.
* Add code reuse to ValidationSupportConfigUtil and increase test coverage for CachingValidationSupportTest.
* Code review feedback: Clarify property description. Fix parameter names. Add extra check for empty codings.
* failing test
* fix
* only store ConceptMap once
* remove new myPreliminaryTransactionWrite flag and use thePerformIndexing
Co-authored-by: nathaniel.doef <nathaniel.doef@smilecdr.com>