Skip to content

IOU - Infinite loading spinner appears when split bill with invalid phone number #8308

Closed

Description

@kavimuru

If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!


Issue reproduced when executing #8019

Action Performed:

  1. Click on FAB ➕ Button -> Split Bill
  2. Enter Amount and press Next
  3. Search and select a three-digit phone number
  4. Click Next and press the Split Bill button

Expected Result:

You should see the following error message for the phone number
Please enter a valid phone number, with the country code (e.g. +1234567890)

Actual Result:

Pressing "Split button" infinite loading spinner appears, after cancelling could not initiate another IOU

Workaround:

Unknown

Platform:

Where is this issue occurring?

  • Web
  • iOS
  • Android
  • Desktop App - Not ready yet still it is 1.1.45-3
  • Mobile Web

Version Number: 1.1.46

Reproducible in staging?: Y

Reproducible in production?: N

Email or phone of affected tester (no customers): mnata.utest+chaty@gmail.com / Utest123

Logs: https://stackoverflow.com/c/expensify/questions/4856

Notes/Photos/Videos:

Recording.232.mp4

Issue reproduced when executing #8019

Expensify/Expensify Issue URL:

Issue reported by: Applause

Slack conversation:

View all open jobs on GitHub

Activity

  1. OSBotify commented on Mar 24, 2022

    @OSBotify
    Contributor

    👋 Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open StagingDeployCash deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:

    1. Identify the pull request that introduced this issue and revert it.
    2. Find someone who can quickly fix the issue.
    3. Fix the issue yourself.
  2. melvin-bot commented on Mar 24, 2022

    @melvin-bot

    Triggered auto assignment to @nkuoch (Engineering), see https://stackoverflow.com/c/expensify/questions/4319 for more details.

  3. melvin-bot commented on Mar 24, 2022

    @melvin-bot

    Triggered auto assignment to @roryabraham (Engineering), see https://stackoverflow.com/c/expensify/questions/4319 for more details.

  4. roryabraham commented on Mar 24, 2022

    @roryabraham
    Contributor

    👀 Lettuce see what needs to be done here

  5. roryabraham commented on Mar 24, 2022

    @roryabraham
    Contributor

    Can't reproduce this on dev, which is a good sign 😄

  6. roryabraham commented on Mar 24, 2022

    @roryabraham
    Contributor

    Not able to reproduce this on staging either 😕

  7. rushatgabhane commented on Mar 25, 2022

    @rushatgabhane
    Member

    Issue is reproducible on staging AND dev.

    Cause: because the phone number is invalid, response.reportID is undefined.

    reportID: response.reportID,

    It isn't handled over here because the response has now changed.

    App/src/libs/actions/IOU.js

    Lines 148 to 151 in 3278ba1

    .then((response) => {
    if (response.jsonCode !== 200) {
    processIOUErrorResponse(response);
    return;

    Screen.Recording.2022-03-25.at.5.25.35.AM.mov
  8. rushatgabhane commented on Mar 25, 2022

    @rushatgabhane
    Member

    @roryabraham This deploy blocker isn't caused by #8019

    It's caused by #8087, because reverting it fixes this issue.

    Proposal

    Return early on error, and nest the promise.

    This diff should make it clear - https://github.com/rushatgabhane/Expensify-App/commit/b616725259ab2e5d2b6a498af55330273e41a214
    cc: @marcaaron is nested promise something we wanna do?

  9. rushatgabhane commented on Mar 25, 2022

    @rushatgabhane
    Member

    I'm gonna take the liberty of creating a PR since it's an hourly ticket.

  10. roryabraham commented on Mar 25, 2022

    @roryabraham
    Contributor

    I wonder why I wasn't able to reproduce it in either environment... 😕

    Thanks for the PR @rushatgabhane 🦸

  11. roryabraham commented on Mar 25, 2022

    @roryabraham
    Contributor

    @Expensify/applauseleads please retest this in 1.1.46-1, and close it if no longer reproducible 🙏

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions