-
Notifications
You must be signed in to change notification settings - Fork 7
Description
Hi RevoPush team,
We're observing a discrepancy between client-side errors (Sentry) and RevoPush dashboard metrics, and we are trying to understand if this is expected behavior or a reporting issue.
Error observed
Multiple Android devices report the following error in Sentry:
CodePushInvalidUpdateException:
Update is invalid - A JS bundle file named "index.android.bundle"
could not be found within the downloaded contents.
Stack trace:
com.microsoft.codepush.react.CodePushInvalidUpdateException
at com.microsoft.codepush.react.CodePushUpdateManager.downloadPackage(CodePushUpdateManager.java:255)
at com.microsoft.codepush.react.CodePushNativeModule$3.doInBackground(CodePushNativeModule.java:432)
at android.os.AsyncTask$3.call(AsyncTask.java:394)
We also frequently see the following log on affected devices:
[CodePush] An update is available, but it is being ignored due to having been previously rolled back.
RevoPush dashboard statistics
For this release we see:
Active: 91
Downloaded: 46
Installed: 91
Failed: 2
However, the number of Sentry events related to the exception above is significantly higher than Failed: 2.
Questions
We're trying to understand how failures are reported in RevoPush:
- When CodePushInvalidUpdateException occurs during downloadPackage, should it be counted as a failed update in RevoPush metrics?
- If an update is installed but later rolled back automatically by CodePush (because notifyAppReady() is never reached or the app crashes), does that increment the Failed counter?
- Is it possible that a device encounters this error before the failure is reported back to the RevoPush server, causing it to be missing from the dashboard metrics?
Hypothesis
Based on the logs, it seems possible that:
- the update download completes
- the package validation fails (index.android.bundle missing)
- the client rolls back locally
- but the failure event may not be reported to RevoPush
Which could explain why the Sentry error count is much higher than the Failed metric.
We'd appreciate clarification on whether this behavior is expected or if it might indicate a reporting issue.
Thanks!