We had a minor site hiccup today. All seems to be working, now.
We have always been open and upfront about the site, so in the interests of full disclosure here is a summary of the problem and steps taken to fix it.
tl;dr Comment counts shown for each story on the main page seem to have stopped getting updated since about midnight this morning; appears to be working now. Please accept our apologies for any who were inconvenienced.
Read on past the fold for details.
Problem: Comment counts on the main page showed "0" comments on recent stories, but opening a story showed the correct number of comments for it.
Actions Taken:
1.) Try bouncing the front-end servers to restart apache (This is a low-risk step that seems to fix a surprising number of issues).
No joy.
2.) Ask for help on the #dev channel on IRC.
Ncommander replied asking if slashd (an over-seeing daemon for the site) was running.
Looked through my log files and on the site wiki; determined that slashd should be running on server: fluorine
ps -AF | grep slashd | wc showed 32 processes
Ncommander suggested: killall -9 slashd
Try: killall -9 slashd
"No process found."
Inspection of output of PS -AF suggested this one-liner should do it:
$(ps -AF | grep slashd | awk '{print "kill -9 " $2}' )
Got most of the processes, but there still seemed to be some stragglers.
/etc/init.d/./slash stop
/etc/init.d/./slash restart
Conclusion:
Looked like it might have worked... reloaded main page... see updated comment counts!
Looks like all is working again.
It's a credit to the staff here that the site has been running so smoothly and without crashing or hiccups for... I can't remember when we last had an outage. Given that in the early days of the site we had maybe a few hours of uptime between crashes, we have come a long ways!
I'm going to assume this is one of those "have you tried turning it off and back on again" kind of problems, and unless the problem re-occurs, assume it is solved.
Need to hurry to get to work, so I apologize for the brevity of this posting.
--martyb
(Score: 2) by RS3 on Tuesday April 23 2019, @06:40PM (5 children)
I don't / haven't done much javascript (and I'm a detractor, but that's another discussion). Are there development tools, code analyzers, single-steppers, breakpoints, debuggers, etc. for javascript?
Is jshint useful?
Is this useful at all: https://raygun.com/javascript-debugging-tips [raygun.com]??
(Score: 4, Interesting) by DannyB on Tuesday April 23 2019, @07:13PM (4 children)
I actually use some of those techniques already. The actual flaw was in the server code. The symptom was it would cause an infinite loop in JS code.
Nothing wrong with that. I wouldn't generally want to use JS if it isn't needed. I now try to do animations and other things using CSS and other techniques where possible -- and fully supported among mainstream browsers.
In a business application, JS is simply a fact of life. This is an application. Not a 'web site'. It is highly interactive with the user and with the server. None of the important business logic happens in the browser -- other than to the extent it supports the UI interaction. All information sent to the server is verified, even redundantly because we don't trust it just because we think it came from our code in the browser.
Simply put, the UI experience without JS would be vastly inferior for this type of application.
The lower I set my standards the more accomplishments I have.
(Score: 2) by RS3 on Tuesday April 23 2019, @07:37PM (1 child)
What an awesome answer, thanks! Wow, cool stuff! You're obviously a great programmer. Kudos! Sounds like your application wants to calculate pi next? :-} If you do, please let me know- I'll start a CPU cooling fan business. But I digress (yet again...)
Speaking of a truly treat UI, I just had to use the McMaster-Carr website a few days ago (looking up screws, etc.) What I truly LOVED was that the column headings STAYED VISIBLE as I scrolled through the pages of screw sizes. It's really clean. If you don't already do that, you might look at their code, get ideas, adapt (never copy...).
I don't hate js, in fact as an occasional programmer, I think it's awesome and I'm big on the client-server model. I got to hating js because especially back in the bad old POTS modem days, (late 90s into 2000s) I quickly discovered that if I turned js OFF, all websites would load MUCH faster. I started using Opera which let me do that, and I still use Old Opera (12.18 or something) because of that. Looking at the code I saw js "pulling" in all kinds of trackers, analytical, ads, etc. Don't need that!! JS that does F to C, or furlongs to meters, that's way cool.
What I also and mostly hate about js is really the fault of the browser and OS- far too much of my computer, files, etc., is available to js. That most malware uses js really set me off. Disposable containerized browsing is the only true safe way. Of course that depends on a 100% robust OS / virtualization...
You mentioned "flaw in server code" and I'm a bit confused. Is it "backend" js? Or browser js that was pulling in 3rd party js libs?
(Score: 2) by DannyB on Tuesday April 23 2019, @08:39PM
Accounting application, not that cool, but it pays the bills. As I have described on SN previously, customers given a choice, prefer to subscribe to it in the cloud even when offered an option to install it on their own equipment.
It's not like the math is complicated. Although the application is complex in its sheer size, database design complexity, etc.
That is one feature on Wikipedia Tables, and also other web sites that I despise.
My employer does not do any monkey business. It's not our business model. That includes not trying to collect and sell information.
The server backend is Java on a beefy server. Front end browser is JS code. There are 3rd party libs (example jquery) but served from our servers. Nothing is pulled from a 3rd party site. No frames. Strictly SSL/TLS.
The lower I set my standards the more accomplishments I have.
(Score: 2) by RS3 on Tuesday April 23 2019, @07:39PM (1 child)
PS: you're probably not old enough, but way back in the day when a new computer would come out, like the Cray-1, people would joke that "it does an infinite loop in 5 seconds".
Ar ar ar.
(Score: 2) by DannyB on Tuesday April 23 2019, @08:43PM
I am old enough to remember that. When BYTE magazine started, I was in high school. :-)
The lower I set my standards the more accomplishments I have.