-
Notifications
You must be signed in to change notification settings - Fork 157
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chained search with modifier :missing causes internal error #1413
Comments
Got around to searching this one and it turns out we already had an issue for it: #473 |
…t it 1. uncomment the chained_missing search tests from the fhir-persistence module 2. update FHIRPersistenceJDBCImpl.checkModifiers to throw a FHIRPersistenceNotSupportedException for chained params with a modifier 3. override these search tests in the fhir-persistence-jdbc concrete subtypes and add an exception expectation separately, i found and opened issue #1415 and made a similar fix: 4. add a search test to AbstractWholeSystemSearchTest 5. update FHIRPersistenceJDBCImpl.checkModifiers to throw a FHIRPersistenceNotSupportedException for whole-system search params with the missing modifier 6. override that search test in JDBCWholeSystemSearchTest to expect that exception Signed-off-by: Lee Surprenant <lmsurpre@us.ibm.com>
1. added javadoc for Element.is 2. added issue of type NOT_SUPPORTED to FHIRPersistenceNotSupportedException for unsupported modifiers 3. added not-supported-detail extension for requests to unsupported resource type endpoints and flipped logic in IssueTypeToHttpStatusMapper so that only NOT_SUPPORTED issues with the "resource" extension are turned into 404 (NOT_FOUND) errors Signed-off-by: Lee Surprenant <lmsurpre@us.ibm.com>
1. added javadoc for Element.is 2. added issue of type NOT_SUPPORTED to FHIRPersistenceNotSupportedException for unsupported modifiers 3. added not-supported-detail extension for requests to unsupported resource type endpoints and flipped logic in IssueTypeToHttpStatusMapper so that only NOT_SUPPORTED issues with the "resource" extension are turned into 404 (NOT_FOUND) errors Signed-off-by: Lee Surprenant <lmsurpre@us.ibm.com>
Verified the following behavior on cloud tenant: GET {{base}}{{contextRoot}}Observation?subject:Patient.gender:missing=true Returned status -> 400 Bad Request |
Working on cloud tenant running IBM FHIR server 4.3.2
Issued via Postman
GET {{base}}{{contextRoot}}Observation?subject:Patient.gender:missing=true
Response (500 Internal Server Error):
{
"resourceType": "OperationOutcome",
"id": "ac-1e-f9-a6-e634f01e-1476-4690-8c08-a53d18328c50",
"issue": [
{
"severity": "fatal",
"code": "exception",
"details": {
"text": "FHIRPersistenceDataAccessException: Server error: failure retrieving count"
}
}
]
}
Expected successful search attempt.
Info from LogDNA provided.
2020Aug14LogDNA.txt
The text was updated successfully, but these errors were encountered: