Commit a6cdeb8
fix(iv): clear stale existingOnesignalId on anon-purge
When jwt_required hydrates true and removeOperationsWithoutExternalId
drops the anon ops, surviving LoginUserOperations may still carry
existingOnesignalId pointing at the just-dropped anon user (the
merge-anon-into-identified link set by LoginHelper). Under IV that
link is permanently unresolvable — anon user creation needs a JWT-less
call the backend rejects — so canStartExecute=false sticks forever and
deadlocks the queue (no other op can dispatch since they all wait on
the login to resolve the local onesignal_id).
Clear existingOnesignalId on every surviving LoginUserOperation so the
executor takes the createUser (upsert) path. Matches the same fix in
reference branches #2599 and #2613.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>1 parent bad99d0 commit a6cdeb8
1 file changed
Lines changed: 12 additions & 0 deletions
File tree
- OneSignalSDK/onesignal/core/src/main/java/com/onesignal/core/internal/operations/impl
Lines changed: 12 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
272 | 272 | | |
273 | 273 | | |
274 | 274 | | |
| 275 | + | |
| 276 | + | |
| 277 | + | |
| 278 | + | |
| 279 | + | |
| 280 | + | |
| 281 | + | |
| 282 | + | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
| 286 | + | |
275 | 287 | | |
276 | 288 | | |
277 | 289 | | |
| |||
0 commit comments