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
Implementation details
device
andcloud
modes.device mode done
and are invalid, during SDK initialization in RudderDeviceModeManager.replayMessageQueue(), we mark all events that arenull
(note: if there is an issue during deserialization, the message becomes null) asdevice mode processing done
.cloud mode done
, we need to handle multiple scenarios:null
. In this case, we need to directly mark the event ascloud mode processing done
.cloud mode processing done
by handling both scenarios: when only a single event is invalid, or when there is a filtered batch.NOTE: Our fix, based on the hypothesis, will not affect the existing SDK behaviour. We have targeted it to handle only a specific error. If there are other types of errors that are not yet known, we cannot address them with this fix, and they will require further research, including a sample invalid JSON payloads made using the latest version of the SDK.
Type of change
Checklist: