Widget errors today?

…and long delays.

I’m getting constantly errors (500 Internal Server Error) trying to read my import.

In chrome’s console, the URL in problem is Login - LingQ
The average time for this URL to load is 2 secondes, ending up with the error.

It’s the same URL no matter what word I’m selecting. It does not stop me from reading, though after 5 or 6 words, it becomes impossible to get the “play-word” button to work; it get stuck for like 30 seconds(or more), then I finally get the word played. Although during all this time, if I pass to the next word, I’m no longer able to get an audio, because I guess the browser is waiting for the current request to finish. If I refresh the page, all is fine again. For 5 or 6 words.

I tried chrome incognito, restarting chrome, etc. Didn’t change anything. I’m not sure weather the 2 problems discribed have anything to do with each other. However, I’d wish I could just cancel the requests that take too long to finish, because I end up refreshing the page constantly. My guess would be that since the example requests take sometimes forever to finish, all subsequent requests are piling up. And since I jump from word to word, each visited word starts a new example request, making it worst and worst.

Right now I will try to get to the code that launch this example request and stop it from doing so. I never look at those anyways.

Would you be able to take a screenshot of the lesson page and send that along with a link to the lesson in an email to support (at) lingq.com? I’m not sure exactly what would be causing this, but hopefully this will help us to reproduce the issue!

The problem has disappeared for now. But also, I overwritten the lesson with another text, so I can’t send you the lesson. However, I’m sure it has nothing to do with a specific lesson, since I got the same problem with the 3 or 4 lessons that I imported that day. Also, if you take this link and just copy it in your browser:

it is now working. Yesterday, it took many seconds to respond, and the response was a 500 code. Do you keep logs of all the 500 errors? It’s a good practice since it’s so often difficult to reproduce a problem days later, when all is working fine (I’m a web programmer, I have the same situations with clients who report problem, and without logs it’s a pain).

I might try a general suggestion: since it seems that my problem was related to the fact that ajax requests are piling up to a point that the queue is so big that the next action I will do will probably take forever to finish, It could be a good idea to abort requests when they become useless. For instance, if I jump from word to word, and the first example request is not yet finished, it is for sure useless by now, since I’m already 4 words for ahead, and so the example wont be used anyway. So you could just abort the ajax request as soon as another one of the same type is made. I write this without knowing the details of your javascript however.

Thanks for the followup on this! That certainly sounds like a reasonable request. I’ll pass this along to our development team to see what we can do here :slight_smile: