Well, Lemmy shouldn’t 502 in the first place. That’s the root cause. The apps should handle that gracefully though, especially given how commonly Lemmy throws a 502.
Of course it doesn’t bode well for the instance itself that it’s throwing so many…but it’s unclear if that’s an operator problem or a code base problem.
I’m using it on iOS and don’t get me wrong the app looks beautiful. I’m finding issues with communities not loading posts, comments or general sync issues. I have an issue where trying to reply to a comment would overlay the comments over the textfield.
That might be a server issue. Lemmy.world is still having performance issues and just like the picture in this post we are all seeing many errors often.
I’m finding issues with communities not loading posts, comments or general sync issues.
Lemmy’s Rust code uses an ORM called Diesel that masks the SQL statements and you really have to watch the PostgreSQL server independently to verify that the SQL isn’t doing wild things like loading thousands of records when you only needed 3. Just today people are finally sharing some information out of the big servers (lemmy.world) as to what PostgreSQL side says is actually happening. Hopefully the biggest mistakes are going to get cleaned up quickly.
Wefwef has been the best for me so far. I’m a previous Boost for Reddit user, so I’m still waiting for their official Lemmy release and then I’ll switch.
Jerboa or just in the browser. Honestly though most people’s issues are likely to be because they joined a huge instance which is falling over due to load. Consider making a new account on a smaller instance.
Dad, please come back. Mom is hoarding all the meth and Beth new boyfriend isn’t even a cartel boss. He’s a an accountant for god sake ! AN ACCOUNTANT !
I would say Lemmy issue. This is probably a default 502 internal sever error response (which I’ve been getting repeatedly from lemmy.world). Jerboa (I don’t use it btw) is only trying to parse the expected json response.
Yes the app could handle the error more gracefully but if Lemmy didn’t respond with an error jerboa wouldn’t need to.
personally I’d say it’s a Jerboa thing. the app should retry loading because sometimes I refresh after this happening and it immediately loads the proper content.
with all the different instances this sort of thing has to be kept in mind
Lemmy realy should not randomly emit errors for no reason, there should be no need for retries in this case. If the specification specifies a JSON response, and the server randomly provides HTML, that is a bug in the server.
When you get a 502 error, that’s not coming from lemmy, it’s coming from nginx. If you’re saying that nginx should send any error data along with the status in json if the accept headers require it, that’s a task for nginx but it wouldn’t happen in this case anyway since the json wouldn’t be what they were expecting anyway. The app should be handling non success responses better is the point being made here.
Just retry is usually a bad ideia, specially that this problem is probably an overload, just adding retries can makes the problem.even worse with the app ddosing the server
Lemmy realy should not randomly emit errors for no reason, there should be no need for retries in this case. If the specification specifies a JSON response, and the server randomly provides HTML, that is a bug in the server.
The error is not being emitted by Lemmy though. The 502 error message is returned to the client by nginx when the Lemmy server doesn’t respond within the a certain time.
You really shouldn’t be expecting any content type when you get any code but a 200. If anything you should expect HTML, then, possibly plain text but that’s a subset (given a loose enough definition of html).
If it’s Jerboa/Android app issue, why do I get JSON errors using Lemmy on my desktop PC with Firefox? Forgive me if this is a dumb question, I have very little programming knowledge.
🤔 The server spits out html when it cannot reach the backend. So one could argue it’s a configuration issue because the admin didn’t provide enough capacity / didn’t set up a proper generic json error for backend failures.
FWIW, Liftoff doesn’t handle these super gracefully either.
At any rate I think it’s kinda awesome that we get to witness these kinds of infancy problems.
No, this is a lemmy issue. The API specification specifies a JSON response, and the server randomly provides HTML, this is a bug in the server. I agree that Jebora should retry in the case of a network failure (timeout, 4xx staus codes…) but it should not have to retry in a case of a server that is not folowing the standard.
Afaik this is not an error from Lemmy but from nginx, which is not able to relay the request to Lemmy and therefore returns a 502 bad gateway response. Imo this just means the servers are over capacity, so most likely a scaling/infrastructure issue.
I had a quick read of the code and it looks pretty solid to me. Not the most “enterprise” code imaginable, but definitely no code smell or quick hacking job.
You are not logged in. However you can subscribe from another Fediverse account, for example Lemmy or Mastodon. To do this, paste the following into the search field of your instance: !programmerhumor@lemmy.ml
Post funny things about programming here! (Or just rant about your favourite programming language.)
Rules:
Posts must be relevant to programming, programmers, or computer science.
No NSFW content.
Jokes must be in good taste. No hate speech, bigotry, etc.
that’s Jerboa issue but probably because It received something from the server that it shouldn’t
deleted by creator
No, the server gave a 502 instead of a JSON and Jerboa doesn’t handle that gracefully.
Seems like the 4 apps I use all have the same issue though which makes me wonder if it’s something in Lemmy causing the issue (not the apps).
Well, Lemmy shouldn’t 502 in the first place. That’s the root cause. The apps should handle that gracefully though, especially given how commonly Lemmy throws a 502.
Well, Lemmy shouldn’t 502 in the first place. The apps should handle that gracefully though, especially given how commonly Lemmy throws a 502.
Actually i was trying to say similar issue
Lemmy is written in rust, that’s a java error so the issue lies with the app you’re using not Lemmy itself (maybe)
The cause is a 502 from lemmy.
Jerboa’s handling of that error is also terrible but that’s another issue.
Memmy doesn’t do well with it either.
Of course it doesn’t bode well for the instance itself that it’s throwing so many…but it’s unclear if that’s an operator problem or a code base problem.
It could also just be a server load issue.
Lemmy.world, the community the instance is hosted on, has been having a few issues between the 0.18.1 update, and the amount of users on the platform.
Mostly the user count at this point, although things have become more stable the last few hours
Yeah, I’ve only experienced this issue when dealing with Lemmy.world. Building my own client, and I get the same issue all the time.
Is there a good Lenny app because so far wefwef hasn’t been great for me.
Can you explain why? Are you using wefwef on Android?
I’m using it on iOS and don’t get me wrong the app looks beautiful. I’m finding issues with communities not loading posts, comments or general sync issues. I have an issue where trying to reply to a comment would overlay the comments over the textfield.
That sounds like a server issue. Try a smaller server
Can I change servers without changing my account?
At this time, no. This is a limitation on lemmy’s side though
That might be a server issue. Lemmy.world is still having performance issues and just like the picture in this post we are all seeing many errors often.
I appreciate the explanation.
Lemmy’s Rust code uses an ORM called Diesel that masks the SQL statements and you really have to watch the PostgreSQL server independently to verify that the SQL isn’t doing wild things like loading thousands of records when you only needed 3. Just today people are finally sharing some information out of the big servers (lemmy.world) as to what PostgreSQL side says is actually happening. Hopefully the biggest mistakes are going to get cleaned up quickly.
Wefwef has been the best for me so far. I’m a previous Boost for Reddit user, so I’m still waiting for their official Lemmy release and then I’ll switch.
Jerboa or just in the browser. Honestly though most people’s issues are likely to be because they joined a huge instance which is falling over due to load. Consider making a new account on a smaller instance.
Liftoff is the best I’ve found so far. Waiting for Sync to come though
Same. RIP sync, long live sync!
Hopefully it doesn’t take long. These other apps aren’t bad but they aren’t great either.
I am quite liking liftoff. It has a slightly different layout to wefwef and you can customize it a bit if you don’t like the default colours.
@Binderfullofpizza In my opinion, Memmy is the best native app at the moment (for iOS).
Thanks I’ll give that a shot.
Thunder but features aren’t all there
What’s so bad with wefwef? I’m using it righty now and enjoying it.
(Also, Memmy is another great Apollo-based app.)
I am using Memmy at the moment and it’s well decent
https://github.com/Memmy-App/memmy
I’ve seen this more times than my own family
Dad, please come back. Mom is hoarding all the meth and Beth new boyfriend isn’t even a cartel boss. He’s a an accountant for god sake ! AN ACCOUNTANT !
Value <html> of type java.lang.String cannot be converted to JSONObject
Lmao I got a 504 when trying to open this post
You know at least it printed an error. I hate when things silently swallow errors.
I’m looking at you, Python programmers:
We are not savages now we use
Is it a lemmy issue or a jerboa issue?
I would say Lemmy issue. This is probably a default 502 internal sever error response (which I’ve been getting repeatedly from lemmy.world). Jerboa (I don’t use it btw) is only trying to parse the expected json response. Yes the app could handle the error more gracefully but if Lemmy didn’t respond with an error jerboa wouldn’t need to.
[This comment has been deleted by an automated system]
Yeah this makes more sense than my original comment
personally I’d say it’s a Jerboa thing. the app should retry loading because sometimes I refresh after this happening and it immediately loads the proper content.
with all the different instances this sort of thing has to be kept in mind
Lemmy realy should not randomly emit errors for no reason, there should be no need for retries in this case. If the specification specifies a JSON response, and the server randomly provides HTML, that is a bug in the server.
When you get a 502 error, that’s not coming from lemmy, it’s coming from nginx. If you’re saying that nginx should send any error data along with the status in json if the accept headers require it, that’s a task for nginx but it wouldn’t happen in this case anyway since the json wouldn’t be what they were expecting anyway. The app should be handling non success responses better is the point being made here.
Just retry is usually a bad ideia, specially that this problem is probably an overload, just adding retries can makes the problem.even worse with the app ddosing the server
true
Twitter has some experience with that
Lemmy realy should not randomly emit errors for no reason, there should be no need for retries in this case. If the specification specifies a JSON response, and the server randomly provides HTML, that is a bug in the server.
The error is not being emitted by Lemmy though. The 502 error message is returned to the client by nginx when the Lemmy server doesn’t respond within the a certain time.
Serious Answer: This is a Jerboa issue. Lemmy is written in Rust. The error message is a Java error which is what native Android apps use.
No, it’s probably when the app is expecting a json but the server returns an html, which usually happens in case of 502 errors.
You really shouldn’t be expecting any content type when you get any code but a 200. If anything you should expect HTML, then, possibly plain text but that’s a subset (given a loose enough definition of html).
If it’s Jerboa/Android app issue, why do I get JSON errors using Lemmy on my desktop PC with Firefox? Forgive me if this is a dumb question, I have very little programming knowledge.
I think it’s both, actually. Lemmy is often giving html where json is expected, and Jerboa isn’t handling the error well.
🤔 The server spits out html when it cannot reach the backend. So one could argue it’s a configuration issue because the admin didn’t provide enough capacity / didn’t set up a proper generic json error for backend failures.
FWIW, Liftoff doesn’t handle these super gracefully either.
At any rate I think it’s kinda awesome that we get to witness these kinds of infancy problems.
Well, what should Jerboa do? Pretend it received content?
It should display a human-readable error message instead of the raw one.
Take it as an error, tell the user about it and then retry with exponential back-off.
No, this is a lemmy issue. The API specification specifies a JSON response, and the server randomly provides HTML, this is a bug in the server. I agree that Jebora should retry in the case of a network failure (timeout, 4xx staus codes…) but it should not have to retry in a case of a server that is not folowing the standard.
Definitely jerboa
I’m having similar errors using liftoff
I’m having similar errors using liftoff
I’ve seen this on both Jerboa and Connect. And even just now
Afaik this is not an error from Lemmy but from nginx, which is not able to relay the request to Lemmy and therefore returns a 502 bad gateway response. Imo this just means the servers are over capacity, so most likely a scaling/infrastructure issue.
I had a quick read of the code and it looks pretty solid to me. Not the most “enterprise” code imaginable, but definitely no code smell or quick hacking job.
I read a couple PRs and it seems like the are rejecting the more hacky stuff.
imo wefwef is the best lemmy client app for iOS/android
https://wefwef.app