Wp-calypso: Purchases: Purchases page will not load for user with 100+ purchases

Created on 7 Dec 2018  路  8Comments  路  Source: Automattic/wp-calypso

A user has about 135 domain registrations, and the Purchases page at https://wordpress.com/me/purchases will not load. It flashes the loading animation indefinitely, as shown here: http://cld.wthms.co/f7EUNL

Because this involves private user information, please see the Slack discussion at p1544134226028300-slack-triage for this user information in order to replicate the issue.

Steps to replicate

  1. SU as user
  2. Visit https://wordpress.com/me/purchases
  3. Observe the list of purchases never loads

Followup ticket has been created at 1626582-zen

user-report

Billing Me Purchases [Pri] High [Type] Bug [Type] Help Request

All 8 comments

Ticket came out of hold, so I sent a note to the user that we're still working on this.

@alisterscott, thank you for triaging the ticket.

What's the next step to get this solved?

Just touching base - ticket came out of hold again - Following @jessestu's lead and notifying the user we're still working on it.

The user has returned to chat looking for an update on this issue. #8719616-hc

User still waiting on an update.

This came up again last week thanks to @andrewspittle. Next step to resolve this:

@rralian is investigating how to speed up the API endpoint and avoid the page not loading issue.

I looked into this over the weekend. First I would mention that the page did load for me when logging in as the affected user, although it was very slow (took nearly 30 seconds). I understand that doesn't mean it necessarily loaded for the user, I'm not suggesting that the user is incorrect here.

This endpoint is very inefficient and most of the logic should ideally be replaced, but that's not likely to happen in the near term. I started looking into paginating the endpoint and will see how easily we can implement this. I'm starting from the back-end which should be relatively straight-forward. May need some help from a front-end dev to implement from the front-end. Paginating the endpoint can probably happen this week. Not sure about the front-end... I haven't looked at that but I seem to recall this code was done in a very non-standard way.

We haven't yet implemented pagination, but I confirmed that this endpoint had been optimized, so the fact that I was able to load the page may mean the user can as well. I'm going to update the ticket to see if the user is now able to load the page.

I can't authenticate to zendesk to update the ticket so I pinged an HE on the ticket to reach out to the user. Closing this as I am now able to consistently load the page as the referenced user.

Was this page helpful?
0 / 5 - 0 ratings