Page MenuHomePhabricator

Discussion page stuck loading only on first load; "TypeError: $.throttle is not a function"
Closed, ResolvedPublic

Description

Hey guys,

Our current setup

The Problem
When accessing a discussion page (of any kind) for the first time ever (for example after creating a page), independently from any user, browser etc. the Flow interface gets stuck loading and interaction is impossible.

On reloading (from the 2nd load of the page) it does work normally.

This is the error we get: http://i.imgur.com/dGwEymc.png
More detailed trace: http://i.imgur.com/xQl5dY3.png

I found another report of this error, but without any solution: https://www.mediawiki.org/wiki/Thread%3AExtension_talk%3AFlow/Flow_stuck_in_loading

How to reproduce

  1. Go on http://en.wikitolearn.vodka/
  2. Create a new page (by typing a random name in the search bar for example)
  3. Access the discussion page of the newly created page
  4. Get stuck loading
  5. Reload
  6. It should work normally

Some other stuff that could be useful
The error does not appear if you access the discussion page before creating the page itself. EG: I can access http://en.wikitolearn.vodka/Talk:ThisIsATest (even if ThisIsATest does not exists) and post stuff (but I get 'Due to a technical error, this post could not be retrieved.' after posting)

We have no idea how to get this fixed, we need your help :)

Have a good day

Cristian

Event Timeline

Restricted Application added subscribers: Zppix, Aklapper. · View Herald TranscriptMay 11 2016, 12:14 PM
Aklapper renamed this task from Discussion page stuck loading only on first load. (WikiToLearn) to Discussion page stuck loading only on first load; "TypeError: $.throttle is not a function".May 11 2016, 4:24 PM

Change 288223 had a related patch set uploaded (by Catrope):
Add missing dependency on jquery.throttle-debounce

https://gerrit.wikimedia.org/r/288223

Change 288223 had a related patch set uploaded (by Catrope):
Add missing dependency on jquery.throttle-debounce
https://gerrit.wikimedia.org/r/288223

@Catrope, any idea why we haven't seen this problem before?

Change 288223 had a related patch set uploaded (by Catrope):
Add missing dependency on jquery.throttle-debounce
https://gerrit.wikimedia.org/r/288223

@Catrope, any idea why we haven't seen this problem before?

In our case:

Random other modules on the wiki are using jquery.throttle-debounce, so it was loaded. In particular, Vector.

In regards to WikiToLearn:

ext.flow depends on it. This is necessary since flow-board-loadmore.js uses $.throttle, but not sufficient since ext.flow.components also uses it. ext.flow depends on ext.flow.components. Once it's locally cached, maybe the execution race condition is not noticeable on the second load.

Change 288223 merged by jenkins-bot:
Add missing dependency on jquery.throttle-debounce

https://gerrit.wikimedia.org/r/288223

Etonkovidova added a subscriber: Etonkovidova.EditedJun 2 2016, 7:24 PM
  1. Tested in cawiki in Flow_test_talk namespace.
    • for creating Flow test talk pages first( without Flow test page)
    • creating Flow test page first, then Flow test talk page.

No errors in Console or no issues with loading pages.

  1. per @Catrope wikilearn should deploy the patch.

The issue is still present in en.wikilearn - e.g. https://en.wikitolearn.org/Talk:Vodka displays
TypeError: $.throttle is not a function TypeError: $.throttle is not a function(…)
intermittent with Uncaught ReferenceError: mw is not defined

The issue is still present in en.wikilearn - e.g. https://en.wikitolearn.org/Talk:Vodka displays
TypeError: $.throttle is not a function TypeError: $.throttle is not a function(…)
intermittent with Uncaught ReferenceError: mw is not defined

@Catrope, is this a problem? Or can we Resolve this?

Mattflaschen-WMF closed this task as Resolved.Jun 2 2016, 8:53 PM

@Catrope, is this a problem? Or can we Resolve this?

The bug is fixed. It probably just means they didn't deploy the fix. It's a third-party site, so they control when they do deployments.