Blank / white page on iOS 7.1.1 - debug steps


(Dean Taylor) #1

I have one user on my forum currently complaining of a “white” screen when visiting my site via iPhone

  • iOS 7.1.1
  • Safari browser
  • Cache cleared
  • Private mode tested
  • Checked over WiFi and 3G
  • Tried turning the phone off and on again.

The same user visiting via iPad on the same WiFi network works correctly.

Personally I have checked the same process on my own iPhone but running a iOS 7.0.6, no problems.
And I can see via Google Analytics that I have at least 10 other iPhone users on today - none of whom are complaining of any issue (believe me I would hear it).

Many 50+ other users are active from Android and desktop browsers.

On the server:

  • I have checked /logs and can’t see anything recent in there.
  • There aren’t any extra plugins installed.
  • Updated to latest via docker update.

Here is what the page looks like to the user:

What are the steps for debugging this one?

Thanks.


ActionView :: Template :: Error (incompatible character encodings : UTF 8 and ASCII 8BIT)
ActionView :: Template :: Error (incompatible character encodings : UTF 8 and ASCII 8BIT)
(Jeff Atwood) #2

Wow, the user tried all that stuff and white screen persists?


(Dean Taylor) #3

Yes - quite confusing.


(Dean Taylor) #4

Oh and to top it off - it only started happening at “lunch-time” today, in the morning it was working.

And there were no system updates in-between.


(Sam Saffron) #5

I wonder if this is a server issue, have them try a few diff entrypoints


(Dean Taylor) #6

Thanks for the suggestion - I’ll get them to check.


(Tudor Vedeanu) #7

I have a similar issue when browsing this forum. Using Safari/ iOS 8 on an iPad 4. It happens randomly and I started noticing it after I upgraded to iOS 8, so I thought maybe the new Safari has some issues with JS.


(Jeff Atwood) #8

I had it happen in iOS 8 as well, but it was for every Discourse instance I tried to visit in Mobile Safari – all white screens.

I closed Mobile Safari, restarted it, and problem went away.


(Dean Taylor) #9

All of the following endpoints were tried - all white / black page:

  1. /latest
  2. /about
  3. /categories
  4. /top

(Dean Taylor) #10

User has also tried “Chrome” on the iPhone - same problem.

I understand that iOS apps use Safari under the hood for all browser windows - but I thought it was worth a shot.


(Jeff Atwood) #11

Is this still going on? e.g. is it a “permanent” condition for that user?

As an extreme test, does restarting the Discourse server help at all?


(Dean Taylor) #12

I believe it is - I’ll get confirmation from the user.

But - it have already restarted as a part of updates and the issue was reported both before and after.


(Jeff Atwood) #13

I wonder if there is any upstream proxy in front of this user causing problems, but trying over WiFi and 3G should have ruled that out.

I assume the same user can get to other Discourse instances, e.g. try.discourse.org ?


(Dean Taylor) #14

I’ve sent a message to the user, I’ll update when the user has confirmed the state of the problem.


(Dean Taylor) #15

I can report that the user is now happy and the site is loading correctly on the device now.

For possible later reference purposes I am currently running 3483c7b0dee52ef9e898a6ef9c780102654c8915

Thanks @codinghorror and @sam for your feedback on this one.


(James Milligan) #16

Just had this happen to a user of mine, iOS 8.1

I can be reading a topic on the mobile interface, and if I hit the refresh icon at the top, it loads me a completely blank page. I have to click the back arrow to get back to the page I was viewing. I’m using Safari on iPhone 5, running iOS 8.1

This is what it shows in the logs:

[Info]

TypeError: Attempted to assign to readonly property.
Url: http://***/assets/vendor-d986d9160237335cdd0adced04ca77a3.js
Line: 115
Column: 690
Window Location: ***

Some more info from [env]:

REQUEST_URI: /logs/report_js_error
REQUEST_METHOD: POST
HTTP_USER_AGENT: Mozilla/5.0 (iPhone; CPU iPhone OS 8_1 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12B411 Safari/600.1.4

The line it refers to in the JS file:

return e>=t[i]?i+2:i}var d=e["default"],m=t.DeferredActionQueues,g=[].slice,v=[].pop,y=d.each,b=d.isString,_=d.isFunction,w=d.isNumber,x=[],C=this,E=/\d+/,k=function(e,t){try{t()}catch(e){}return!!e}();if(i.prototype={queueNames:null,options:null,currentInstance:null,instanceStack:null,begin:function(){var e=this.options,t=e&&e.onBegin,n=this.currentInstance;n&&this.instanceStack.push(n),this.currentInstance=new m(this.queueNames,e),t&&t(this.currentInstance,n)},end:function(){var e=this.options,t=e&&e.onEnd,n=this.currentInstance,r=null,i=!1;try{n.flush()}finally{i||(i=!0,this.currentInstance=null,this.instanceStack.length&&(r=this.instanceStack.pop(),this.currentInstance=r),t&&t(n,r))}},run:function(e,t){var n=o(this.options);this.begin(),t||(t=e,e=null),b(t)&&(t=e[t]);var r=g.call(arguments,2),i=!1;if(n)try{return t.apply(e,r)}catch(s){n(s)}finally{i||(i=!0,this.end())}else try{return t.apply(e,r)}finally{i||(i=!0,this.end())}},defer:function(e,t,n){n||(n=t,t=null),b(n)&&(n=t[n]);var r=this.DEBUG?new Error:void 0,i=arguments.length>3?g.call(arguments,3):void 0;

Just to add, I’m running master/tests-passed on latest.


(Dean Taylor) #17

I have just had user reports of this issue.

They tested on try.discourse.org it occured there too.

iPhone 5 iOS Version 8.1 (12B411)

It occurs in both of these builds:

  • Discourse 1.2.0.beta1 - version 3b9df39687e4b62d0bd5dfcdfb6f67e7b0593b68
  • Discourse 1.2.0.beta1 - version 034942ac5ff27364ced82008fd58d58329330af4

For me Line 115, Column 690 is here:

Steps to reproduce:

  1. Visit homepage
  2. Click to view a topic.
  3. Click the site logo in top left
  4. Click to view a new topic.

This is what it looks like to users:

User then reports they must close the browser to view the site again - but guessing refresh will work.


(James Milligan) #18

In addition, clicking on reply links in emails also gives a blank page. Refreshing ‘gives the page back’.


(Anton) #20

I have the same reports from my users - last time they checked yesterday. White screen on mobiles with android and ios. Unfortunately, no version/browser details provided. But the users were sure that our forum had been working on the same mobile phones before.


(Robin Ward) #21

There are a bunch of errors in the logs that are not clear to me. I am going to spend a little time investigating this.