Skip to content

Commit 20c01df

Browse files
authored
Merge pull request #271153 from EXPEkesheth/patch-fhir-release-91
FHIR Release 4.0.91 notes
2 parents f0ed6ad + 626fa1a commit 20c01df

File tree

5 files changed

+46
-19
lines changed

5 files changed

+46
-19
lines changed

articles/healthcare-apis/azure-api-for-fhir/fhir-rest-api-capabilities.md

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ ms.author: kesheth
1313

1414
[!INCLUDE [retirement banner](../includes/healthcare-apis-azure-api-fhir-retirement.md)]
1515

16-
In this article, we'll cover some of the nuances of the RESTful interactions of Azure API for FHIR.
16+
In this article, we cover some of the nuances of the RESTful interactions of Azure API for FHIR.
1717

1818
## Conditional create/update
1919

@@ -27,7 +27,7 @@ Azure API for FHIR offers two delete types. There's [Delete](https://www.hl7.org
2727

2828
### Delete (Hard + Soft Delete)
2929

30-
Delete defined by the FHIR specification requires that after deleting a resource, subsequent non-version specific reads of a resource returns a 410 HTTP status code. Therefore, the resource is no longer found through searching. Additionally, Azure API for FHIR enables you to fully delete (including all history) the resource. To fully delete the resource, you can pass a parameter settings `hardDelete` to true `(DELETE {{FHIR_URL}}/{resource}/{id}?hardDelete=true)`. If you don't pass this parameter or set `hardDelete` to false, the historic versions of the resource will still be available.
30+
Delete defined by the FHIR specification requires that after deleting a resource, subsequent nonversion specific reads of a resource returns a 410 HTTP status code. Therefore, the resource is no longer found through searching. Additionally, Azure API for FHIR enables you to fully delete (including all history) the resource. To fully delete the resource, you can pass a parameter settings `hardDelete` to true `(DELETE {{FHIR_URL}}/{resource}/{id}?hardDelete=true)`. If you don't pass this parameter or set `hardDelete` to false, the historic versions of the resource will still be available.
3131

3232
> [!NOTE]
3333
> If you only want to delete the history, Azure API for FHIR supports a custom operation called `$purge-history`. This operation allows you to delete the history off of a resource.
@@ -44,13 +44,13 @@ You can do the same search but include `hardDelete=true` to also delete all hist
4444

4545
`DELETE https://{{FHIR_URL}}/Patient?identifier=1032704&hardDelete=true`
4646

47-
To delete multiple resources, include `_count=100` parameter. This parameter will delete up to 100 resources that match the search criteria.
47+
To delete multiple resources, include `_count=100` parameter. This parameter deletes up to 100 resources that match the search criteria.
4848

4949
`DELETE https://{{FHIR_URL}}/Patient?identifier=1032704&_count=100`
5050

5151
### Recovery of deleted files
5252

53-
If you don't use the hard delete parameter, then the record(s) in Azure API for FHIR should still exist. The record(s) can be found by doing a history search on the resource and looking for the last version with data.
53+
If you don't use the hard delete parameter, then the records in Azure API for FHIR should still exist. The records can be found by doing a history search on the resource and looking for the last version with data.
5454

5555
If the ID of the resource that was deleted is known, use the following URL pattern:
5656

@@ -67,7 +67,7 @@ For example: `https://myworkspace-myfhirserver.fhir.azurehealthcareapis.com/Pati
6767
After you've found the record you want to restore, use the `PUT` operation to recreate the resource with the same ID, or use the `POST` operation to make a new resource with the same information.
6868

6969
> [!NOTE]
70-
> There is no time-based expiration for history/soft delete data. The only way to remove history/soft deleted data is with a hard delete or the purge history operation.\
70+
> There is no time-based expiration for history/soft delete data. The only way to remove history/soft deleted data is with a hard delete or the purge history operation.
7171
7272
## Batch Bundles
7373
In FHIR, bundles can be considered as a container that holds multiple resources. Batch bundles enable users to submit a set of actions to be performed on a server in single HTTP request/response.
@@ -124,15 +124,12 @@ In the case of a batch, each entry is treated as an individual interaction or op
124124
> [!NOTE]
125125
> For batch bundles there should be no interdependencies between different entries in FHIR bundle. The success or failure of one entry should not impact the success or failure of another entry.
126126
127-
### Batch bundle parallel processing in public preview
127+
### Batch bundle parallel processing
128128

129129
Currently batch bundles are executed serially in FHIR service. To improve performance and throughput, we're enabling parallel processing of batch bundles in public preview.
130130
To use the capability of parallel batch bundle processing-
131-
* Set header “x-bundle-processing-logic” value to “parallel”.
132-
* Ensure there's no overlapping resource ID that is executing on DELETE, POST, PUT or PATCH operations in the same bundle.
133-
134-
> [!IMPORTANT]
135-
> Bundle parallel processing is currently in public preview. Preview APIs and SDKs are provided without a service-level agreement. We recommend that you don't use them for production workloads. Some features might not be supported, or they might have constrained capabilities. For more information, review Supplemental Terms of Use for Microsoft Azure Previews
131+
* Set header 'x-bundle-processing-logic' value to 'parallel'.
132+
* Ensure there's no overlapping resource ID that is executing on DELETE, POST, PUT, or PATCH operations in the same bundle.
136133

137134
## Patch and Conditional Patch
138135

articles/healthcare-apis/azure-api-for-fhir/release-notes.md

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,18 @@ ms.author: kavitagaddam
1717

1818
Azure API for FHIR provides a fully managed deployment of the Microsoft FHIR Server for Azure. The server is an implementation of the [FHIR](https://hl7.org/fhir) standard. This document provides details about the features and enhancements made to Azure API for FHIR.
1919

20+
## **March 2024**
21+
**Batch-bundle parallelization**
22+
Batch bundles are executed serially in FHIR service by default. To improve throughput with bundle calls, we enabled parallel processing of batch bundles.
23+
24+
Learn more:
25+
- [Batch bundle parallelization](././../azure-api-for-fhir/fhir-rest-api-capabilities.md)
26+
27+
**Bug Fixes**
28+
29+
- **Fixed: Improve performance for bundle processing**. Updates are made to the task execution method, leading to bundle processing performance improvement. See [PR#3727](https://github.com/microsoft/fhir-server/pull/3727).
30+
31+
2032
## **February 2024**
2133
**Enables counting all versions (historical and soft deleted) of resources**
2234
The query parameter _summary=count and _count=0 can be added to _history endpoint to get count of all versioned resources. This count includes soft deleted resources. For more information, see [history management](././../azure-api-for-fhir/purge-history.md).
@@ -74,7 +86,7 @@ For more details, visit [#3222](https://github.com/microsoft/fhir-server/pull/32
7486

7587
**Fixed the Error generated when resource is updated using if-match header and PATCH**
7688

77-
Bug is now fixed and Resource will be updated if matches the Etag header. For details , see [#2877](https://github.com/microsoft/fhir-server/issues/2877)|
89+
Bug is now fixed and Resource will be updated if matches the Etag header. For details , see [#2877](https://github.com/microsoft/fhir-server/issues/2877)|.
7890

7991
## May 2022
8092

@@ -124,7 +136,7 @@ Bug is now fixed and Resource will be updated if matches the Etag header. For de
124136
|Enhancements |Related information |
125137
| :----------------------------------- | :--------------- |
126138
|Added 429 retry and logging in BundleHandler |We sometimes encounter 429 errors when processing a bundle. If the FHIR service receives a 429 at the BundleHandler layer, we abort processing of the bundle and skip the remaining resources. We've added another retry (in addition to the retry present in the data store layer) that will execute one time per resource that encounters a 429. For more about this feature enhancement, see [PR #2400](https://github.com/microsoft/fhir-server/pull/2400).|
127-
|Billing for `$convert-data` and `$de-id` |Azure API for FHIR's data conversion and de-identified export features are now Generally Available. Billing for `$convert-data` and `$de-id` operations in Azure API for FHIR has been enabled. Billing meters were turned on March 1, 2022. |
139+
|Billing for `$convert-data` and `$de-id` |Azure API for FHIR's data conversion and deidentified export features are now Generally Available. Billing for `$convert-data` and `$de-id` operations in Azure API for FHIR has been enabled. Billing meters were turned on March 1, 2022. |
128140

129141
### **Bug fixes**
130142

@@ -146,7 +158,7 @@ Bug is now fixed and Resource will be updated if matches the Etag header. For de
146158

147159
|Bug fixes |Related information |
148160
| :----------------------------------- | :--------------- |
149-
|Fixed 500 error when `SearchParameter` Code is null |Fixed an issue with `SearchParameter` if it had a null value for Code, the result would be a 500. Now it will result in an `InvalidResourceException` like the other values do. [#2343](https://github.com/microsoft/fhir-server/pull/2343) |
161+
|Fixed 500 error when `SearchParameter` Code is null |Fixed an issue with `SearchParameter` if it had a null value for Code, the result would be a 500. Now it results in an `InvalidResourceException` like the other values do. [#2343](https://github.com/microsoft/fhir-server/pull/2343) |
150162
|Returned `BadRequestException` with valid message when input JSON body is invalid |For invalid JSON body requests, the FHIR server was returning a 500 error. Now we'll return a `BadRequestException` with a valid message instead of 500. [#2239](https://github.com/microsoft/fhir-server/pull/2239) |
151163
|`_sort` can cause `ChainedSearch` to return incorrect results |Previously, the sort options from the chained search's `SearchOption` object wasn't cleared, causing the sorting options to be passed through to the chained subsearch, which aren't valid. This could result in no results when there should be results. This bug is now fixed [#2347](https://github.com/microsoft/fhir-server/pull/2347). It addressed GitHub bug [#2344](https://github.com/microsoft/fhir-server/issues/2344). |
152164

articles/healthcare-apis/fhir/fhir-features-supported.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ All the operations that are supported that extend the REST API.
5757
| [$patient-everything](patient-everything.md) | Yes | Yes | |
5858
| [$purge-history](purge-history.md) | Yes | Yes | |
5959
| [$import](import-data.md) |No |Yes | |
60+
| [$bulk-delete](fhir-bulk-delete.md)|Yes |Yes | |
6061

6162
## Role-based access control
6263

articles/healthcare-apis/release-notes-2024.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,26 @@ Learn more:
5050
- [Manage medical imaging data with the DICOM service and Azure Data Lake Storage](./dicom/dicom-data-lake.md)
5151
- [Deploy the DICOM service with Azure Data Lake Storage](./dicom/deploy-dicom-services-in-azure-data-lake.md)
5252

53+
### FHIR Service
54+
55+
#### Bundle parallelization (GA)
56+
Bundles are executed serially in FHIR service by default. To improve throughput with bundle calls, we enabled parallel processing.
57+
58+
Learn more:
59+
- [Bundle parallelization](./../healthcare-apis/fhir/fhir-rest-api-capabilities.md)
60+
61+
#### Import operation accepts multiple resource types in single file
62+
63+
Import operation allowed to have resource type per input file in the request parameters. With this enhance capability, you can pass multiple resource types in single file.
64+
65+
#### Bug Fixes
66+
67+
- **Fixed: Import operation ingest resources with same resource type and lastUpdated field value**. Before this change, resources executed in a batch with same type and lastUpdated field value were not ingested into the FHIR service. This bug fix addresses the issue. See [PR#3768](https://github.com/microsoft/fhir-server/pull/3768).
68+
69+
- **Fixed: FHIR search with 3 or more custom search parameters**. Before this fix, FHIR search query at the root with three or more custom search parameters resulted in HTTP status code 504. See [PR#3701](https://github.com/microsoft/fhir-server/pull/3701).
70+
71+
- **Fixed: Improve performance for bundle processing**. Updates are made to the task execution method, leading to bundle processing performance improvement. See [PR#3727](https://github.com/microsoft/fhir-server/pull/3727).
72+
5373
## February 2024
5474

5575
### FHIR service

includes/fhir-rest-api-bundle.md

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -70,12 +70,9 @@ Transaction bundle currently does not support
7070
1. Conditional Delete operation.
7171
2. Search operations using _search.
7272

73-
### Batch bundle parallel processing in public preview
73+
### Bundle parallel processing
7474

75-
Currently Batch and transaction bundles are executed serially in FHIR service. To improve performance and throughput, we're enabling parallel processing of batch bundles in public preview.
75+
Currently Batch and transaction bundles are executed serially in FHIR service. To improve performance and throughput, we're enabling parallel processing of bundles.
7676
To use the capability of parallel batch bundle processing-
7777
* Set header “x-bundle-processing-logic” value to “parallel”.
7878
* Ensure there's no overlapping resource ID that is executing on DELETE, POST, PUT or PATCH operations in the same bundle.
79-
80-
> [!IMPORTANT]
81-
> Bundle parallel processing is currently in public preview. Preview APIs and SDKs are provided without a service-level agreement. We recommend that you don't use them for production workloads. Some features might not be supported, or they might have constrained capabilities. For more information, review Supplemental Terms of Use for Microsoft Azure Previews

0 commit comments

Comments
 (0)