From 401d4f71efff9d8e96550d5cbd9e1e6162416322 Mon Sep 17 00:00:00 2001 From: Patrick Werner Date: Thu, 9 Oct 2025 13:39:43 +0200 Subject: [PATCH 1/8] feat: add configuration for marking resources for reindexing upon search parameter change --- .../java/ca/uhn/fhir/jpa/starter/AppProperties.java | 10 ++++++++++ .../jpa/starter/common/FhirServerConfigCommon.java | 2 ++ 2 files changed, 12 insertions(+) diff --git a/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java b/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java index f10f693..fc1f318 100644 --- a/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java +++ b/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java @@ -118,6 +118,7 @@ public class AppProperties { private Map remote_terminology_service = null; private Boolean match_url_cache_enabled = false; private Boolean index_storage_optimized = false; + private Boolean mark_resources_for_reindexing_upon_search_parameter_change = true; public List getCustomInterceptorClasses() { return custom_interceptor_classes; @@ -785,6 +786,15 @@ public class AppProperties { index_storage_optimized = theIndex_storage_optimized; } + public Boolean getMark_resources_for_reindexing_upon_search_parameter_change() { + return mark_resources_for_reindexing_upon_search_parameter_change; + } + + public void setMark_resources_for_reindexing_upon_search_parameter_change( + Boolean mark_resources_for_reindexing_upon_search_parameter_change) { + this.mark_resources_for_reindexing_upon_search_parameter_change = mark_resources_for_reindexing_upon_search_parameter_change; + } + public JpaStorageSettings.StoreMetaSourceInformationEnum getStore_meta_source_information() { return store_meta_source_information; } diff --git a/src/main/java/ca/uhn/fhir/jpa/starter/common/FhirServerConfigCommon.java b/src/main/java/ca/uhn/fhir/jpa/starter/common/FhirServerConfigCommon.java index f28a2c6..ffc7515 100644 --- a/src/main/java/ca/uhn/fhir/jpa/starter/common/FhirServerConfigCommon.java +++ b/src/main/java/ca/uhn/fhir/jpa/starter/common/FhirServerConfigCommon.java @@ -187,6 +187,8 @@ public class FhirServerConfigCommon { jpaStorageSettings.setSchedulingDisabled(!appProperties.getDao_scheduling_enabled()); jpaStorageSettings.setIndexStorageOptimized(appProperties.getIndex_storage_optimized()); jpaStorageSettings.setMatchUrlCacheEnabled(appProperties.getMatch_url_cache_enabled()); + jpaStorageSettings.setMarkResourcesForReindexingUponSearchParameterChange( + appProperties.getMark_resources_for_reindexing_upon_search_parameter_change()); jpaStorageSettings.setDeleteEnabled(appProperties.getDelete_enabled()); jpaStorageSettings.setDeleteExpungeEnabled(appProperties.getDelete_expunge_enabled()); jpaStorageSettings.setExpungeEnabled(appProperties.getExpunge_enabled()); From 41402d23289db21b31a59983ceb28c7faab860f0 Mon Sep 17 00:00:00 2001 From: Patrick Werner Date: Thu, 9 Oct 2025 13:53:52 +0200 Subject: [PATCH 2/8] fix formatting --- src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java b/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java index fc1f318..2314844 100644 --- a/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java +++ b/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java @@ -792,7 +792,8 @@ public class AppProperties { public void setMark_resources_for_reindexing_upon_search_parameter_change( Boolean mark_resources_for_reindexing_upon_search_parameter_change) { - this.mark_resources_for_reindexing_upon_search_parameter_change = mark_resources_for_reindexing_upon_search_parameter_change; + this.mark_resources_for_reindexing_upon_search_parameter_change = + mark_resources_for_reindexing_upon_search_parameter_change; } public JpaStorageSettings.StoreMetaSourceInformationEnum getStore_meta_source_information() { From a0ffe4f3933fa62175d260f70fd447a17df8433a Mon Sep 17 00:00:00 2001 From: Brenin Rhodes Date: Mon, 20 Oct 2025 09:15:39 -0600 Subject: [PATCH 3/8] Update CR to 3.28.0-SNAPSHOT --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index b55df6d..3d84685 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ 17 3 - 3.27.0 + 3.28.0-SNAPSHOT From 6208595063d351a56a512478ebcc887a2de6df40 Mon Sep 17 00:00:00 2001 From: Brenin Rhodes Date: Mon, 27 Oct 2025 08:16:46 -0600 Subject: [PATCH 4/8] include us cql common ig --- src/main/resources/application-cds.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/main/resources/application-cds.yaml b/src/main/resources/application-cds.yaml index a11eceb..2b0f4d7 100644 --- a/src/main/resources/application-cds.yaml +++ b/src/main/resources/application-cds.yaml @@ -170,6 +170,11 @@ hapi: version: 2.0.0 installMode: STORE_AND_INSTALL installResourceTypes: [ "CodeSystem", "ValueSet", "ConceptMap", "ActivityDefinition", "PlanDefinition", "Library", "Measure", "StructureDefinition" ] + uscql: + name: hl7.fhir.us.cql + version: 1.0.0 + installMode: STORE_AND_INSTALL + installResourceTypes: [ "CodeSystem", "ValueSet", "ConceptMap", "ActivityDefinition", "PlanDefinition", "Library", "Measure", "StructureDefinition" ] # swiss: # name: swiss.mednet.fhir # version: 0.8.0 From 98b1cd9373980efba981ce7df66292bdde10afac Mon Sep 17 00:00:00 2001 From: Patrick Werner Date: Thu, 30 Oct 2025 10:43:06 +0100 Subject: [PATCH 5/8] feat: add configuration for marking resources for reindexing upon search parameter change (#867) * feat: add configuration for marking resources for reindexing upon search parameter change * fix formatting --- .../java/ca/uhn/fhir/jpa/starter/AppProperties.java | 11 +++++++++++ .../jpa/starter/common/FhirServerConfigCommon.java | 2 ++ 2 files changed, 13 insertions(+) diff --git a/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java b/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java index 94f12dd..d30d33e 100644 --- a/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java +++ b/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java @@ -126,6 +126,7 @@ public class AppProperties { private Map remote_terminology_service = null; private Boolean match_url_cache_enabled = false; private Boolean index_storage_optimized = false; + private Boolean mark_resources_for_reindexing_upon_search_parameter_change = true; private Integer reindex_thread_count = null; private Integer expunge_thread_count = null; @@ -811,6 +812,16 @@ public class AppProperties { index_storage_optimized = theIndex_storage_optimized; } + public Boolean getMark_resources_for_reindexing_upon_search_parameter_change() { + return mark_resources_for_reindexing_upon_search_parameter_change; + } + + public void setMark_resources_for_reindexing_upon_search_parameter_change( + Boolean mark_resources_for_reindexing_upon_search_parameter_change) { + this.mark_resources_for_reindexing_upon_search_parameter_change = + mark_resources_for_reindexing_upon_search_parameter_change; + } + public Integer getReindex_thread_count() { return reindex_thread_count; } diff --git a/src/main/java/ca/uhn/fhir/jpa/starter/common/FhirServerConfigCommon.java b/src/main/java/ca/uhn/fhir/jpa/starter/common/FhirServerConfigCommon.java index da3ce06..3106fa3 100644 --- a/src/main/java/ca/uhn/fhir/jpa/starter/common/FhirServerConfigCommon.java +++ b/src/main/java/ca/uhn/fhir/jpa/starter/common/FhirServerConfigCommon.java @@ -190,6 +190,8 @@ public class FhirServerConfigCommon { jpaStorageSettings.setSchedulingDisabled(!appProperties.getDao_scheduling_enabled()); jpaStorageSettings.setIndexStorageOptimized(appProperties.getIndex_storage_optimized()); jpaStorageSettings.setMatchUrlCacheEnabled(appProperties.getMatch_url_cache_enabled()); + jpaStorageSettings.setMarkResourcesForReindexingUponSearchParameterChange( + appProperties.getMark_resources_for_reindexing_upon_search_parameter_change()); jpaStorageSettings.setDeleteEnabled(appProperties.getDelete_enabled()); jpaStorageSettings.setDeleteExpungeEnabled(appProperties.getDelete_expunge_enabled()); jpaStorageSettings.setExpungeEnabled(appProperties.getExpunge_enabled()); From 159f1eb3e13bdfe8efd851baf603e6dafdd7f65a Mon Sep 17 00:00:00 2001 From: Patrick Werner Date: Thu, 30 Oct 2025 16:56:09 +0100 Subject: [PATCH 6/8] add missing property in application.yaml --- src/main/resources/application.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/resources/application.yaml b/src/main/resources/application.yaml index 5dff60e..c0dff53 100644 --- a/src/main/resources/application.yaml +++ b/src/main/resources/application.yaml @@ -283,6 +283,7 @@ hapi: # Defaults to Runtime.getRuntime().availableProcessors() if not specified # reindex_thread_count: 4 # Number of threads to use for reindex operations # expunge_thread_count: 4 # Number of threads to use for expunge operations + # mark_resources_for_reindexing_upon_search_parameter_change: false # ------------------------------------------------------------------------------- # G. Narrative & Validation From fcff082fab62c462854b058cc2e0fc73c490ab92 Mon Sep 17 00:00:00 2001 From: Brenin Rhodes Date: Thu, 30 Oct 2025 13:10:38 -0600 Subject: [PATCH 7/8] Update to CR 3.28.0 release --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 3d84685..3fec11b 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ 17 3 - 3.28.0-SNAPSHOT + 3.28.0 From cc42e0afe7771e8690851e00a99b68c5f5cd308b Mon Sep 17 00:00:00 2001 From: Patrick Werner Date: Fri, 31 Oct 2025 09:43:54 +0100 Subject: [PATCH 8/8] Update src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java b/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java index d30d33e..aefaaa1 100644 --- a/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java +++ b/src/main/java/ca/uhn/fhir/jpa/starter/AppProperties.java @@ -812,8 +812,8 @@ public class AppProperties { index_storage_optimized = theIndex_storage_optimized; } - public Boolean getMark_resources_for_reindexing_upon_search_parameter_change() { - return mark_resources_for_reindexing_upon_search_parameter_change; + public boolean getMark_resources_for_reindexing_upon_search_parameter_change() { + return defaultIfNull(mark_resources_for_reindexing_upon_search_parameter_change, true); } public void setMark_resources_for_reindexing_upon_search_parameter_change(