On Thu, Jun 08, 2006 at 10:19:31AM -0600, Bob Beck wrote: > * Otto Moerbeek <[EMAIL PROTECTED]> [2006-06-08 10:00]: > > On Thu, 8 Jun 2006, Michael Erdely wrote: > > > > > Hi, > > > > > > I've got a Dell Dimension XPS B866r desktop running as my web/mail > > > server (recently upgraded to 3.9). > > > > > > Occasionally, after a seemingly random amount of time, the machine > > > will do one of two things: it will either lockup/freeze where > > > there are no messages on the console, but you cannot type, ping or > > > access the box in any way (but the reset button) OR, since I have > > > ddb.panic=0, it will reboot with the following message from my > > > serial console:
> > your system is running out of semaphore undo data structures. Try > > increasing at least kern.seminfo.semmnu. Other semaphore related > > sysctl's might need an increase as well. > And mysqueal sucks... > > Your system may run out of other things as well given the bloatware > you're running on it. anything else I have mysqeal on and any > significant amount of users I usually have to crank up quite a few of > the default limits, both in the kernel and in mysql - I usually build > a GENERIC with maxusers=128 to start, and then find the 80 bazillion > knobs in mysqeal to turn to tell it to use file descriptors. no really > use more than 100 file descriptors. no really really use more than > 100 file descriptors.... > > If you have a small number of users you may be fine. however > seeing what you have there and 512 mb of ram, you may want a bit more > if you have significant usage. > > Did I mention that mysqueal sucks? To be fully honest, OpenBSD sucks quite a bit too, in this area (massively threaded servers). There are good reasons for this suckage; but MySQL does not perform quite as well on OpenBSD as it does on almost every other system, so it's not entirely fair to only base one's opinion on that. Of course, I installed it first on Linux, and then found that it was basically a fastish table (not a RDBMS - use PostgreSQL if you want that). With a lot of crud. And, indeed, quite strange configuration options. And which required one to install something like 3.x to build the client part of 4.x, or something similarly inane (supposedly, everyone used binary packages). And which has had quite a few security problems of its own. Finally, it's the wrong solution in almost every case. It's not a database - again, use PostgreSQL. If you only want a table, you could look at SQLite - I never used it, but it's supposedly much, much easier and very fast. Of course, it's even less of an RDBMS than MySQL, but it still works for PHP scripts and it's not like MySQL is much good for anything else. Never mind that PHP scripts are, themselves, better replaced by a proper solution - like FastCGI - written in a proper language - i.e., almost anything but PHP: Perl, Python, Ruby[2], C[1]. Joachim [1] Some of these, especially C, would cost slightly more time, though, which is an issue in some cases. However, I'd assert that anyone not capable of writing in a real language shouldn't be writing internet-exposed programs in the first place. Additionally, I'm not allowed to do this. A good idea, probably - a random PHP script can be understood fairly easily and just plonked down on any commercial hoster; on the other hand, a heavily optimized C program is less likely to be understood... [2] It's been said that Ruby is very slow. I don't know anything about it, really - if this is the case, its place in the list of real languages might need reconsidering.