james-server-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stefano Bagnara" <apa...@bago.org>
Subject Re: Innodb better?
Date Tue, 28 Jun 2005 07:45:57 GMT
> However, MyISAM tables can corrupt if the mysql process is 
> merely killed during a write, or the power is cut off.  Any 
> decent logging/journaling[1] persistence strategy will 
> protect you from these--there's no reason in the year 2005 
> for this to be a point of failure at all.  InnoDB for example 
> should not suffer from this problem, if it does then the 
> MySQL folks *really* have no clue what they are doing.

I think here there are too many people talking about theory and interpreting
sentences to easily.

I personally ran multiple MySQL, from 1GB to 80GB databases, for 5 years
having millions of updates per day and never lost data. After few hardware
crash mysql at run said "myisam table corrupted, run myisamchk for a manual
repair" (or something similar) I simply ran myisamchk and repaired the table
before restart: it worked fine.

Have you ever restarted an Oracle machine after an hardware crash? It happen
once to me and I had to call an Oracle DBA because the DB was not restarting
automatically. For sure maybe I've had luck with MySQL and lesser with
Oracle but here is my practice.

IMHO No transaction support doesn't mean more probability of data
corruption: When the application does not use transaction you don't know
wether is safer a transactional db or a not transactional one.

And about your sentence about MySQL folks, I would consider that MySQL is
the MOST installed DB around, it simply works and it is FAST.

James does not use transaction and if you look at source code you will find
plenty of cases where after a SOFT restart it will resend the same message
twice or after an HARD kill it will loose messages so I think that we should
not give so much importance to the non transactionality of mysql.

I will try InnoDB because of the row level locking: I think this feature
could improve james spooling performance but I'm not sure.


PS: it is REALLY easy to setup a slave mysql server that replicate your
original server for better availability.

To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org

View raw message