Visitors can check out the Forum FAQ by clicking this link. You have to register before you can post: click the REGISTER link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below. View our Forum Privacy Policy.
Want to receive the latest contracting news and advice straight to your inbox? Sign up to the ContractorUK newsletter here. Every sign up will also be entered into a draw to WIN £100 Amazon vouchers!
Sounds fun on a weekend! I was trying to do an Edge addin that allows me to get OS Grid reference instead of lat/long from Bing maps but the maths is incredibly complicated. Then I had a "brilliant" idea. Since I'm only interested in an area of few square miles I could just set up some tables based on local points and then interpolate. Trouble is, when I did graphs of one format vs the other the lines were dead wobbly!
Darn god! If he'd made the earth flat I wouldn't have his problem!
Yes, the whole OS Grid reference thing is a nightmare - I looked at it a few years ago, turned round, and walked quickly away
I've been getting very confused tonight, because something was slinging task invocations into my Celery queue that used an old task that has now moved, and therefore the invocations failed. But none of the current code that invokes such tasks was using the old task.
In the end, I stopped all the background processes that might have anything to do with it, yet these task invocations still kept on coming. I had no idea where they might be coming from
Finally I grepped the process list - and lo and behold, no less than three processes were running the task-invoking code, all with a parent process ID of 1, and at least one of them clearly using the old task
It turns out that a process can get taken over by the root process if it's otherwise healthy but its parent process dies. At three points in the past, the supervisord process must have died and left these zombie processes running, which were of course unknown to the new instance of supervisord when it was restarted by systemd. (I don't even use supervisord any more - it's all under systemd now.)
So I killed the zombies gracefully, and everything went back to normal
Tomorrow, I'm going to implement my plan to just spin up a new server every few days and dispose of the old one. If I'd done that already, it would have saved me hours of digging around in Linux internals this evening
Comment