

Mach's designers simply assumed that systems would be rebooted often enough - zachbeane
http://clozure.com/pipermail/openmcl-devel/2011-February/012567.html

======
mobilemonkey
I'm not going to pretend I know what Mach is, but around here, (big company
that you're familiar with), rebooting/bouncing the servers is pretty much how
issues are dealt with. "Response times outside of SLA: bounced the server."
"Database connections timing out: bounced the server." "Users experiencing
high load times for pages: restarted JVMs. Then bounced the servers."

Root cause seems to be "server up too long."

~~~
jwhitlark
At my last sysadmin job, we had a policy of bouncing a server if it's uptime
exceeded one year, not to clean up any resources, but to make sure the config
in the files matched the config that was running. Of course, not only were we
running Linux (gentoo, in fact), but a lot of our stuff was DJB services,
including his service manager.

I'd argue that a 5 why's analysis of "server up too long", leads to "server
wasn't written well." YMMV

~~~
gwern
Richard P. Gabriel makes that point somewhere - that one of the downsides of
an 'organic' system like a Lisp or Smalltalk image where you can rewrite or do
anything dynamically is that you tend to do just that, and can wind up in a
situation where you are no longer able to stop using the image because it has
too many valuable changes which are too difficult to reverse-engineer.

~~~
cwp
That's a bit of an understatement. Basically all Squeak and VisualWorks images
have been running since some time in the late '70s. They've been migrated from
16- to 32- to 64-bits and across chip architectures, but it's the same image.
Other dialects were bootstrapped more recently, and some of them have retained
the ability to create an image from scratch.

I guess bootstrapping is more common in the Lisp world.

------
jarin
I wonder if that's been fixed in the OS X/Darwin version of Mach, seems like
the only time I ever reboot my MacBook is for system updates.

~~~
eibrahim
really man? maybe you are not using your macbook long enough or you are simply
browsing the internet with it?

I reboot my macbook pro (running leopard) as often as I reboot my windows 7 PC
which is not much. Except I use the Win7 machine 90% of the time and for much
more "intensive" stuff.

~~~
blago
As a fellow mac user: If you are rebooting your Mac for reasons other then
system upgrade, something is wrong with your machine. I say this as someone
who compiles from source and runs server software on my mac almost every day.
mogodb, apache, nodejs, mysql, tomcat is just the tip of the iceberg in the
server department.

~~~
technomancy
> If you are rebooting your Mac for reasons other then system upgrade,
> something is wrong with your machine

Indeed; that is the point of the article. =)

~~~
larsberg
Or you have made the grave, grave mistake of installing Adobe products on your
machine.

------
bm98
My favorite Linux bug (since fixed):

<https://bugzilla.redhat.com/show_bug.cgi?id=97373> (System UPTIME reported
incorrectly):

"Steps to Reproduce: 1. Boot Linux system; 2. Go away for 497 days; 3. check
uptime"

~~~
stcredzero
Take it off the queue and go on a 16 month sabbatical to somewhere really
beautiful. Come back, check uptime, report to your boss that you've recreated
it and you'll start digging in the code.

<http://xkcd.com/583/>

------
pinko
Relevant:
[http://www.usenix.org/event/osdi04/tech/full_papers/candea/c...](http://www.usenix.org/event/osdi04/tech/full_papers/candea/candea.pdf)

Microreboot – A Technique for Cheap Recovery

"A significant fraction of software failures in large-scale Internet systems
are cured by rebooting, even when the exact failure causes are unknown.
However, rebooting can be expensive, causing nontrivial service disruption or
downtime even when clusters and failover are employed. In this work we use
separation of process recovery from data recovery to enable microrebooting – a
fine-grain technique for surgically recovering faulty application components,
without disturbing the rest of the application."

------
aidenn0
"Hello IT, have you tried turning it off and on again?"

------
fleitz
There are some great reasons due to memory fragmentation and other issues to
reboot your systems every two or three days anyway. Plus, if you pride
yourself on having failover, DR systems, etc, rebooting lets you know that
your failover systems are working.

