Improve disk buffering example to retry exporting unsuccessfully exported batches #2539
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description:
I have noticed some issues with the "Reading data" section of the disk buffering README.
Firstly, the
CompletableResultCodes are not awaited, they are just fired and forgotten, causing leaks and potential performance problems in the embedding application.Secondly, the errors encountered during exporting are simply ignored, and the iteration goes on causing the unsuccessfully exported batches to be deleted permanently. This means that if there is an IOException for example due to the device or the telemetry backend being offline, the telemetry is dropped silently.
In the proposed example both issues are addressed.
Existing Issue(s):
Related: open-telemetry/opentelemetry-android#1493
Testing:
N/A (only changed a README)