You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There are several scenarios where bulk upload results don't make it to ReportStream and there is no indication to the user that their data has not been successfully delivered. Users should receive an error if their data is not accepted by any pipeline it is intended for (just UP for bulk uploads without any Covid results, but otherwise both Covid and UP).
Proposed solution
The frontend will already show an error toast if backend doesn't respond with a 200, so we could make sure to throw exceptions in any case where:
data fails to parse or get transformed before we send to ReportStream
we can't parse the ReportStream response after uploading, since this means the response does not match the expected "Success" response
If either the Covid or the UP upload fails, we should expose an error.
Open question: How much detail should error message have? This will impact whether technical solution needs to also update frontend.
Potential issue: if upload fails to make it to one pipeline but makes it successfully to another, users will see an error message and will likely upload again, leading to duplicates
Additional context
Relevant test cases from recent support escalations:
preceding whitespace in date time string causes a DateTimeParseException to get thrown inside the CompletableFuture returned by TestResultUploadService#submitResultsToCovidPipeline -> this should show an error to the user
ReportStream error response from Universal Pipeline endpoint is not in JSON -> this should show an error to the user
The text was updated successfully, but these errors were encountered:
Additional additional context: this is intended to be a bandaid fix. Realistically we need to rewrite our file processing logic.
Update from communication with ReportStream, it sounds like we are close to the point where all receivers are on the universal pipeline and we could remove the covid pipeline altogether.
Description
There are several scenarios where bulk upload results don't make it to ReportStream and there is no indication to the user that their data has not been successfully delivered. Users should receive an error if their data is not accepted by any pipeline it is intended for (just UP for bulk uploads without any Covid results, but otherwise both Covid and UP).
Proposed solution
The frontend will already show an error toast if backend doesn't respond with a
200
, so we could make sure to throw exceptions in any case where:If either the Covid or the UP upload fails, we should expose an error.
Open question: How much detail should error message have? This will impact whether technical solution needs to also update frontend.
Potential issue: if upload fails to make it to one pipeline but makes it successfully to another, users will see an error message and will likely upload again, leading to duplicates
Additional context
Relevant test cases from recent support escalations:
DateTimeParseException
to get thrown inside theCompletableFuture
returned byTestResultUploadService#submitResultsToCovidPipeline
-> this should show an error to the userThe text was updated successfully, but these errors were encountered: