Blank Screen for Topic on Mobile Web: TypeError in Admin Console

iOS vs13.3.1
Mobile Chrome v80.0.3987.95

I visited a Topic on our Forum and it loaded just the header (twice in one case, see screenshots after error output below) – effectively it was a blank page. I was logged out at the time. Refresh, new page and reload, and closing app and reload all did not resolve the problem. Very hard to diagnose from mobile.

I could not reproduce the issue on my desktop.

From my Admin Error Logs I was able to correlate two errors from the same time:


# FIRST ERROR 8:09pm

TypeError: undefined is not a function (near '...l.replace...') Url: https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js Line: 1 Col

https://community.redwoodjs.com/assets/pretty-text-bundle-b028b1d5eed228f191f4f25757a12c99d1209f6a9ce91f98c6d378dd3589df7d.js:1:88120
https://community.redwoodjs.com/assets/application-c72a723208a0a310c886f34a1d7e6157d4a403f74e04829c4d23643ffea3593c.js:1:1218167
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:112413
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:419530
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:409113
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:422544
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:422239
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:415154
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:449567
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:449160
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:449067
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:474873
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:142193
V@https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:187610
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:145561
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:145879
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:145269
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:144382
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:144109
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:490070
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:489056
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:491075
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:496504
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:493039
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:497040
e@https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:29468
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:29788

# SECOND ERROR 8:51pm

TypeError: undefined is not an object (evaluating 'e.position().top') Url: https://community.redwoodjs.com/assets/application-c72a723208a0a310c886f34a1d7e6157d4a403f74e04829c4d23643ffea3593c.js Line:

l@https://community.redwoodjs.com/assets/application-c72a723208a0a310c886f34a1d7e6157d4a403f74e04829c4d23643ffea3593c.js:1:208270
t@https://community.redwoodjs.com/assets/application-c72a723208a0a310c886f34a1d7e6157d4a403f74e04829c4d23643ffea3593c.js:1:208295
scrolled@https://community.redwoodjs.com/assets/application-c72a723208a0a310c886f34a1d7e6157d4a403f74e04829c4d23643ffea3593c.js:1:1095126
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:490059
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:489056
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:491075
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:496504
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:493039
https://community.redwoodjs.com/assets/ember_jquery-3ed0ac532033dfeecf1ec0676df6716cd7076530930c656754ccf103d35b3e23.js:1:497862
[native code]

Please let me know if there’s any further information I can provide or steps to help assess.

Moving this to support for now until we can find steps to repro on other sites. If it’s reproducible here or on try.discourse.org then it can be treated as a bug. I’ve tried to browse the topic in question on your site from my mobile, and couldn’t repro the blank page at all.

First question is always: does it work in safe mode? RedwoodJS Community

If yes then it’s likely to be a site customization - although if this were true I would have expected to have seen it also.

1 Like

Thanks @Stephen I tried to reproduce the error in both safe-mode and out of safe-mode, but unfortunately I could not. I’m suspicious that it only happens when a user is logged-out. Perhaps when I logged in it reset cache/etc. and therefore “fixed” the error.

I forgot to mention, here’s how the error occurred in the first place:

  1. on Slack App, we use the Discourse integration. I clicked a topic link from the integration bot, which opens in my Chrome browser on mobile.
  2. I am not logged in on my Chrome browser. I received the blank page mentioned above.

I have the Discourse Hub app on my phone. Typically I open this directly to access the forum and topics.

We’ve had increasing reports of this issue from individuals viewing the site as a guest across various topics. The admin error logs I believe are associated are all some variation of TypeError: X is not a function for either pretty-text-bundle or ember_jquery asset (same as original post error).

→ I just upgraded to 2.5.0.beta3 and will report back if this seems to resolve the issue.

Reproduction

I was not able to reproduce this error using Safe Mode. If I turned on safe mode, the error would cease. But then if I “turned off” Safe Mode, I also couldn’t reproduce the error again.

This topic was reproducing the error for a while via guess access on a Web browser:
:rocket: RWJS v0.6.0 is Now Available

One user reported the output from https://community.redwoodjs.com/logs/report_js_error which displayed:
Rate Limited

I was able to reproduce this error and corresponding Rate Limited on my on Mac as a guest on Safari. But the same topic loaded fine on Firefox (again as a guest).

Site Settings/Hosting

Our site uses two plugins:

Hosted on Digitalocean with a setup very close to provided installing instructions.

Likely something in your themes if it goes away in safe mode?

Possible, but pretty vanilla in there…

I’ll keep trying. It’s just every time I think I have a reproducible example it resolves.

Possibly a caching issue? How could I check?

If you can’t repro it here, it’s 100% something in your setup, one way or the other.

Understood. And I actually have experienced it here on meta.discourse.org back when I set up our site in March. I was searching on Google for information about the Slack integration settings, clicked a link to a topic, and ended up with a mostly blank screen with the title header repeated several times (see second screenshot in my original post here). At the time I worked around it with Google Search cached version and then haven’t experienced it since then. And I could visit other topics and the home page just fine.

So strange.

I’ll keep scratching at this and definitely report back. With any luck, maybe it is resolved somehow with the beta3 update. :crossed_fingers:

Lastly, we are really really happy with Discourse and how quickly our community has been taking shape in just 6 weeks. I’m inspired and can only dream people will say the same someday about RedwoodJS once it has the time to grow up a bit.

Thank you.

2 Likes

Do you have any proxies or any other unusual setup?

Update
The upgrade to Beta3 seems to have eliminated the issue for most users who were reporting problems. Fingers crossed!

re: Proxies/Setup
Using Cloudflare 1.1.1.1 for my network DNS, but nothing custom otherwise.

I was wondering if it could be add-blocker related – some people reported it working fine in Chrome Incognito but not without, for example.

Still scratching my head…

1 Like