C compared to C++/Java; Was: Re: InnoDB Hot Backup + MySQL embedded?
Jochem, - Original Message - From: Jochem van Dieten [EMAIL PROTECTED] Newsgroups: mailing.database.myodbc Sent: Saturday, February 21, 2004 2:10 AM Subject: Re: InnoDB Hot Backup + MySQL embedded? Sasha Pachev wrote: Heikki Tuuri wrote: C versus object-oriented lanuguages like C++/Java is a topic I have discussed a lot with programmers. I believe that traditional procedural approaches and languages, like C, are the best for 'systems programming', by which I mean implementing anything with complex data structures and lots of parallelism. A DBMS is a typical example of such a complex program. 3) A weakness of C compared to Java is memory management. In C you can easily write programs that leak memory or run over allocated buffers. In practice, it has turned out to be relatively easy to keep these memory management bugs at a tolerable level in our C programs, so that a move to a language with automatic memory management is not needed. In Java is it easy to write a program that wastes large amounts of memory, which is worse than a leak. In C, you are full from the start, and then you leak a drop at a time until you are empty. In Java , you are empty from the start, and you have nothing to leak anyway even if you could :-) http://citeseer.nj.nec.com/shah01java.html here is a .pdf version of the paper: http://gist.cs.berkeley.edu/~mashah/java-paper/paper.pdf The authors used a 2 x Pentium III 667 MHz, Linux-2.2.16, Sun JDK 1.3, and Java HotSpot Server JVM 1.3.0. to implement a 'data-flow' query processor. Their conclusion is that the memory management and the garbage collection of Java is inefficient. The graph that they present shows an up to 2.5-fold performance degradation with the Java garbage collector, compared to their own tailored memory management system. I worked with Entity Systems Oy in the 1980s. We developed a Lisp interpreter and a compiler, and a Prolog interpreter. At that time, the inefficiency of the garbage collection in Lisp and Prolog was a serious problem. I am not familiar with more modern garbage collection algorithms, but the paper of Shah et al. suggests that there are still problems today. In the 1980s, the research group of Mike Stonebraker initially started implementing Postgres in a mixture of Lisp and C, but they later abandoned Lisp. Jochem Regards, Heikki -- I don't get it immigrants don't work and steal our jobs - Loesje -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]
Re: C compared to C++/Java; Was: Re: InnoDB Hot Backup + MySQL embedded?
Heikki Tuuri wrote: From: Jochem van Dieten Sasha Pachev wrote: In Java is it easy to write a program that wastes large amounts of memory, which is worse than a leak. In C, you are full from the start, and then you leak a drop at a time until you are empty. In Java , you are empty from the start, and you have nothing to leak anyway even if you could :-) http://citeseer.nj.nec.com/shah01java.html Their conclusion is that the memory management and the garbage collection of Java is inefficient. The graph that they present shows an up to 2.5-fold performance degradation with the Java garbage collector, compared to their own tailored memory management system. Indeed. I think the article nicely illustrates Sasha's point regarding the efficiency of Java. But I just posted this link since since it is about a database system (of some sort) and I'm trying to stay on-topic ;-) Jochem -- I don't get it immigrants don't work and steal our jobs - Loesje -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]
Re: InnoDB Hot Backup + MySQL embedded?
C versus object-oriented lanuguages like C++/Java is a topic I have discussed a lot with programmers. I believe that traditional procedural approaches and languages, like C, are the best for 'systems programming', by which I mean implementing anything with complex data structures and lots of parallelism. A DBMS is a typical example of such a complex program. My opinion is based on: Amen! 1) The object-oriented paradigm recommends that algorithms are structured around 'objects', that is, around data structures. But I think it is easier for humans to understand complex algorithms, like the splitting of a node in a B-tree, if the algorithms are presented on their own terms, and not fragmented around the 'objects' involved. Donald Knuth of the Stanford University remarked that proving the correctness of an 'object-oriented' algorithm is hard, because keeping track of autonomous 'objects' is difficult. Amen! 3) A weakness of C compared to Java is memory management. In C you can easily write programs that leak memory or run over allocated buffers. In practice, it has turned out to be relatively easy to keep these memory management bugs at a tolerable level in our C programs, so that a move to a language with automatic memory management is not needed. In Java is it easy to write a program that wastes large amounts of memory, which is worse than a leak. In C, you are full from the start, and then you leak a drop at a time until you are empty. In Java , you are empty from the start, and you have nothing to leak anyway even if you could :-) -- Sasha Pachev Create online surveys at http://www.surveyz.com/ -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]
Re: InnoDB Hot Backup + MySQL embedded?
Sasha Pachev wrote: Heikki Tuuri wrote: C versus object-oriented lanuguages like C++/Java is a topic I have discussed a lot with programmers. I believe that traditional procedural approaches and languages, like C, are the best for 'systems programming', by which I mean implementing anything with complex data structures and lots of parallelism. A DBMS is a typical example of such a complex program. 3) A weakness of C compared to Java is memory management. In C you can easily write programs that leak memory or run over allocated buffers. In practice, it has turned out to be relatively easy to keep these memory management bugs at a tolerable level in our C programs, so that a move to a language with automatic memory management is not needed. In Java is it easy to write a program that wastes large amounts of memory, which is worse than a leak. In C, you are full from the start, and then you leak a drop at a time until you are empty. In Java , you are empty from the start, and you have nothing to leak anyway even if you could :-) http://citeseer.nj.nec.com/shah01java.html Jochem -- I don't get it immigrants don't work and steal our jobs - Loesje -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]
Re: InnoDB Hot Backup + MySQL embedded?
Jochem van Dieten wrote: Sasha Pachev wrote: Heikki Tuuri wrote: C versus object-oriented lanuguages like C++/Java is a topic I have discussed a lot with programmers. I believe that traditional procedural approaches and languages, like C, are the best for 'systems programming', by which I mean implementing anything with complex data structures and lots of parallelism. A DBMS is a typical example of such a complex program. 3) A weakness of C compared to Java is memory management. In C you can easily write programs that leak memory or run over allocated buffers. In practice, it has turned out to be relatively easy to keep these memory management bugs at a tolerable level in our C programs, so that a move to a language with automatic memory management is not needed. In Java is it easy to write a program that wastes large amounts of memory, which is worse than a leak. In C, you are full from the start, and then you leak a drop at a time until you are empty. In Java , you are empty from the start, and you have nothing to leak anyway even if you could :-) http://citeseer.nj.nec.com/shah01java.html That's nice, of course. But can you think of a one database server written in Java that comes anywhere close in performance and reliability to their C/C++ counterparts? I suspect that a hard-core tough system software (in Heikki's sense) programmer, the kind of guy it would take to write high-performance and high reliability code, finds Java unappealing. Java's safety mechanisms are helpful when you do not quite know what you are doing. When you do, for every instance of help, you get ten instances of hindernance. -- Sasha Pachev Create online surveys at http://www.surveyz.com/ -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]
Re: InnoDB Hot Backup + MySQL embedded?
Sasha Pachev wrote: C versus object-oriented lanuguages like C++/Java is a topic I have discussed a lot with programmers. I believe that traditional procedural approaches and languages, like C, are the best for 'systems programming', by which I mean implementing anything with complex data structures and lots of parallelism. A DBMS is a typical example of such a complex program. My opinion is based on: Amen! When you look at a DBMS, complex barely does justice to the code at hand from what I've read. You basically have to build your own OS (especially in the case of MySQL/InnoDB, considering it runs on UNIXes, Linuxes, BSDs, NetWare and Windows). 1) The object-oriented paradigm recommends that algorithms are structured around 'objects', that is, around data structures. But I think it is easier for humans to understand complex algorithms, like the splitting of a node in a B-tree, if the algorithms are presented on their own terms, and not fragmented around the 'objects' involved. Donald Knuth of the Stanford University remarked that proving the correctness of an 'object-oriented' algorithm is hard, because keeping track of autonomous 'objects' is difficult. Amen! A lot of people at my university would say But an object is just like a struct! How hard can it be?? I bet you're really going to love writing the method BTreeNode::splitInSomeManner() that produces something that can be used for spliting on the downward traversal and BTreeNode:splitInSomeOtherManner that can be used on the upward traversal. 3) A weakness of C compared to Java is memory management. In C you can easily write programs that leak memory or run over allocated buffers. In practice, it has turned out to be relatively easy to keep these memory management bugs at a tolerable level in our C programs, so that a move to a language with automatic memory management is not needed. In Java is it easy to write a program that wastes large amounts of memory, which is worse than a leak. In C, you are full from the start, and then you leak a drop at a time until you are empty. In Java , you are empty from the start, and you have nothing to leak anyway even if you could :-) Additionally, I find it amusing when an exception chain in Java ends inside the Java VM. Additionally, Java's too nice. When I stuff something up, I want to see something disheartening like Segmentation Fault not NullPointerException. How dare Java take away the spice of life which is the fun of debugging C code! -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]
Re: InnoDB Hot Backup + MySQL embedded?
Sasha Pachev wrote: Jochem van Dieten wrote: Sasha Pachev wrote: Heikki Tuuri wrote: C versus object-oriented lanuguages like C++/Java is a topic I have discussed a lot with programmers. I believe that traditional procedural approaches and languages, like C, are the best for 'systems programming', by which I mean implementing anything with complex data structures and lots of parallelism. A DBMS is a typical example of such a complex program. 3) A weakness of C compared to Java is memory management. In C you can easily write programs that leak memory or run over allocated buffers. In practice, it has turned out to be relatively easy to keep these memory management bugs at a tolerable level in our C programs, so that a move to a language with automatic memory management is not needed. In Java is it easy to write a program that wastes large amounts of memory, which is worse than a leak. In C, you are full from the start, and then you leak a drop at a time until you are empty. In Java , you are empty from the start, and you have nothing to leak anyway even if you could :-) http://citeseer.nj.nec.com/shah01java.html That's nice, of course. But can you think of a one database server written in Java that comes anywhere close in performance and reliability to their C/C++ counterparts? I suspect that a hard-core tough system software (in Heikki's sense) programmer, the kind of guy it would take to write high-performance and high reliability code, finds Java unappealing. Java's safety mechanisms are helpful when you do not quite know what you are doing. When you do, for every instance of help, you get ten instances of hindernance. The problem is that C took off for, amongst other reasons, being just the right distance from the metal. It's close enough so you can write things that execute quickly yet has useful enough abstractions so that you can represent whatever data structures you need with a reasonable amount of effort. Personally, I think Java's memory management advantages are terribly overrated. Some of the dodgy things you can do in C with malloc() allow you to very efficiently allocate ahead of time without initialising all that pre-allocated space ready for usage as whatever struct it is you're intrested in. Additionally, Java's main strength is arguably the sheer number of libraries it comes with. Another great strength is the community-accessible documentation, but this can also be a problem as every single one of my friends at uni insists that to use any class that is provided with ther JDK, you must extend it. The old recommendation of favouring composition over inheritence seems to be lost on them. -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]
Re: InnoDB Hot Backup + MySQL embedded?
Chris, - Alkuperäinen viesti - Lähettäjä: Chris Nolan [EMAIL PROTECTED] Vastaanottaja: Heikki Tuuri [EMAIL PROTECTED] Kopio: [EMAIL PROTECTED] Lähetetty: Monday, February 16, 2004 1:56 PM Aihe: Re: InnoDB Hot Backup + MySQL embedded? Heikki, Thank you greatly for answering my questions. Your obvious dedication to the open source world and high-quality of software cannot be understated. thank you :). Upon reading some of the InnoDB source code, I've noticed that C seems to be your language of choice. That said, it seems more and more of the literature that is promoted around my university emphasises testing methods related to OO languages like Java and C++ or looking at different programming paradigms such as logical programming (my university formally trains all students in Prolog and optionally Mercury) and functional programming (Our very first CS subject involves Haskell programming! It used to involve Miranda). Is there anything in the way of strategies that you would recommend to developers (I'm working on a MySQL/InnoDB based server app at the moment. Anyone else who reads this message please hit me with your 2c) regarding C programming and testing (they drill C into us with great rigor at the university I attend, but after second year it boils down to assignment submissions and that's about it)? C versus object-oriented lanuguages like C++/Java is a topic I have discussed a lot with programmers. I believe that traditional procedural approaches and languages, like C, are the best for 'systems programming', by which I mean implementing anything with complex data structures and lots of parallelism. A DBMS is a typical example of such a complex program. My opinion is based on: 1) The object-oriented paradigm recommends that algorithms are structured around 'objects', that is, around data structures. But I think it is easier for humans to understand complex algorithms, like the splitting of a node in a B-tree, if the algorithms are presented on their own terms, and not fragmented around the 'objects' involved. Donald Knuth of the Stanford University remarked that proving the correctness of an 'object-oriented' algorithm is hard, because keeping track of autonomous 'objects' is difficult. 2) C++ encourages programmers to use 'implicit' operations. In C++ functions can have the same name, even though they take a different number of parameters, and the data type of the parameters can differ. There can be implicit constructor and destructor operations for objects. I believe that the use implicit operations is prone to bugs, and makes a program harder to read. 3) A weakness of C compared to Java is memory management. In C you can easily write programs that leak memory or run over allocated buffers. In practice, it has turned out to be relatively easy to keep these memory management bugs at a tolerable level in our C programs, so that a move to a language with automatic memory management is not needed. In all programming languages I think the following are important programming conventions: 1) Remove redundancy from your code. Analogous to 'normalizing' your relational database. 2) Use a lot of comments. 3) Use a lot of assertions, which capture bugs early on. The reason that I ask is that you have managed to create the world's fastest transactional database handler that runs on such a large number of different architectures and operating systems. Also, the fact that you've taken everything that Oracle tout as making them brilliant and doing it many times better than they have displays your commitment and incredible set of skills. I must say that I have never before heard such praise in software world :). Often it is just the opposite. The Usenet is full of threads saturated with bashing and name-calling. I hope that one day that the software I am currently building will also contribute to both the commercial software world and the open source community. The fact that you've achieved this with such success and that you post to the MySQL mailing list so often is why I ask you these questions. Regards, Chris Best regards Heikki -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]
Re: InnoDB Hot Backup + MySQL embedded?
Heikki, Thank you greatly for answering my questions. Your obvious dedication to the open source world and high-quality of software cannot be understated. Upon reading some of the InnoDB source code, I've noticed that C seems to be your language of choice. That said, it seems more and more of the literature that is promoted around my university emphasises testing methods related to OO languages like Java and C++ or looking at different programming paradigms such as logical programming (my university formally trains all students in Prolog and optionally Mercury) and functional programming (Our very first CS subject involves Haskell programming! It used to involve Miranda). Is there anything in the way of strategies that you would recommend to developers (I'm working on a MySQL/InnoDB based server app at the moment. Anyone else who reads this message please hit me with your 2c) regarding C programming and testing (they drill C into us with great rigor at the university I attend, but after second year it boils down to assignment submissions and that's about it)? The reason that I ask is that you have managed to create the world's fastest transactional database handler that runs on such a large number of different architectures and operating systems. Also, the fact that you've taken everything that Oracle tout as making them brilliant and doing it many times better than they have displays your commitment and incredible set of skills. I hope that one day that the software I am currently building will also contribute to both the commercial software world and the open source community. The fact that you've achieved this with such success and that you post to the MySQL mailing list so often is why I ask you these questions. Regards, Chris On Sat, 2004-02-14 at 08:13, Heikki Tuuri wrote: Chris, - Original Message - From: Chris Nolan [EMAIL PROTECTED] To: Heikki Tuuri [EMAIL PROTECTED] Cc: [EMAIL PROTECTED] Sent: Thursday, February 12, 2004 2:26 PM Subject: Re: InnoDB Hot Backup + MySQL embedded? Dear Heikki, Thanks for the quick response! It never ceases to amaze me that such compartively small teams at Innobase Oy and MySQL AB produce such incredibly high-quality software. thank you for the praise :). Being a final-year Software Engineering student, I'm curious as to what you consider the most difficult problem to solve in building InnoDB and ibbackup has been. Of technical matters, multiversioning (consistent read) has been the most difficult to get working reliably. I wrote it probably around 1996, and still last year a bug was found in it. Adaptive hash indexes and the insert buffer have also been difficult to debug. The reason is obvious: in these 3 things parallel execution of threads as well as background cleanup operations complicate things. One-threaded, deterministic processing is much easier to debug than multithreaded nondeterministic execution. Given the fact that you set your goals extremely high for InnoDB (and have acheived them quite handily), I want to ensure that if anything remotely similar comes up in my final-year project that I either put my hand up for it and take on the challenge or run screaming in the other direction and have a somewhat easier year. In academic circles it is best not to put too much emphasis on programming work :). Referees tend to favor papers written in plain English, and want algorithms in pseudocode. They are not willing to dive into the full complexity of a real-world implementation. There has been quite a lot of debate and criticism around this gap between typical university research and practical applications, but things will probably not change in the next 2500 years. Regards, Chris Best regards, Heikki Heikki Tuuri wrote: Chris, - Original Message - From: Chris Nolan [EMAIL PROTECTED] Newsgroups: mailing.database.myodbc Sent: Thursday, February 12, 2004 2:45 AM Subject: InnoDB Hot Backup + MySQL embedded? Hi all, I'm looking at developing an (open source) server-style application with the embedded MySQL library to be employed as the primary data store. Has anyone attempted to use InnoDB Hot Backup for such a beast? I ask as I do not know whether communication between ibbackup and the database engine is required (thus requiring a few changes to the embedded lib before compilation). A quick scan through the docs involved doesn't seem to point me in the right direction for a definitive answer on this. ibbackup can be used with the MySQL Embedded Server Library, no problem in that. ibbackup does not communicate with the mysqld server at all. It just reads the InnoDB data and log files. On the other hand, the innobackup Perl script does start a mysql connection to the server. Regards, Chris Best regards, Heikki Tuuri Innobase Oy http
Re: InnoDB Hot Backup + MySQL embedded?
Chris, - Original Message - From: Chris Nolan [EMAIL PROTECTED] To: Heikki Tuuri [EMAIL PROTECTED] Cc: [EMAIL PROTECTED] Sent: Thursday, February 12, 2004 2:26 PM Subject: Re: InnoDB Hot Backup + MySQL embedded? Dear Heikki, Thanks for the quick response! It never ceases to amaze me that such compartively small teams at Innobase Oy and MySQL AB produce such incredibly high-quality software. thank you for the praise :). Being a final-year Software Engineering student, I'm curious as to what you consider the most difficult problem to solve in building InnoDB and ibbackup has been. Of technical matters, multiversioning (consistent read) has been the most difficult to get working reliably. I wrote it probably around 1996, and still last year a bug was found in it. Adaptive hash indexes and the insert buffer have also been difficult to debug. The reason is obvious: in these 3 things parallel execution of threads as well as background cleanup operations complicate things. One-threaded, deterministic processing is much easier to debug than multithreaded nondeterministic execution. Given the fact that you set your goals extremely high for InnoDB (and have acheived them quite handily), I want to ensure that if anything remotely similar comes up in my final-year project that I either put my hand up for it and take on the challenge or run screaming in the other direction and have a somewhat easier year. In academic circles it is best not to put too much emphasis on programming work :). Referees tend to favor papers written in plain English, and want algorithms in pseudocode. They are not willing to dive into the full complexity of a real-world implementation. There has been quite a lot of debate and criticism around this gap between typical university research and practical applications, but things will probably not change in the next 2500 years. Regards, Chris Best regards, Heikki Heikki Tuuri wrote: Chris, - Original Message - From: Chris Nolan [EMAIL PROTECTED] Newsgroups: mailing.database.myodbc Sent: Thursday, February 12, 2004 2:45 AM Subject: InnoDB Hot Backup + MySQL embedded? Hi all, I'm looking at developing an (open source) server-style application with the embedded MySQL library to be employed as the primary data store. Has anyone attempted to use InnoDB Hot Backup for such a beast? I ask as I do not know whether communication between ibbackup and the database engine is required (thus requiring a few changes to the embedded lib before compilation). A quick scan through the docs involved doesn't seem to point me in the right direction for a definitive answer on this. ibbackup can be used with the MySQL Embedded Server Library, no problem in that. ibbackup does not communicate with the mysqld server at all. It just reads the InnoDB data and log files. On the other hand, the innobackup Perl script does start a mysql connection to the server. Regards, Chris Best regards, Heikki Tuuri Innobase Oy http://www.innodb.com Foreign keys, transactions, and row level locking for MySQL InnoDB Hot Backup - a hot backup tool for InnoDB which also backs up MyISAM tables Order MySQL technical support from https://order.mysql.com/ -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]
Re: InnoDB Hot Backup + MySQL embedded?
Chris, - Original Message - From: Chris Nolan [EMAIL PROTECTED] Newsgroups: mailing.database.myodbc Sent: Thursday, February 12, 2004 2:45 AM Subject: InnoDB Hot Backup + MySQL embedded? Hi all, I'm looking at developing an (open source) server-style application with the embedded MySQL library to be employed as the primary data store. Has anyone attempted to use InnoDB Hot Backup for such a beast? I ask as I do not know whether communication between ibbackup and the database engine is required (thus requiring a few changes to the embedded lib before compilation). A quick scan through the docs involved doesn't seem to point me in the right direction for a definitive answer on this. ibbackup can be used with the MySQL Embedded Server Library, no problem in that. ibbackup does not communicate with the mysqld server at all. It just reads the InnoDB data and log files. On the other hand, the innobackup Perl script does start a mysql connection to the server. Regards, Chris Best regards, Heikki Tuuri Innobase Oy http://www.innodb.com Foreign keys, transactions, and row level locking for MySQL InnoDB Hot Backup - a hot backup tool for InnoDB which also backs up MyISAM tables Order MySQL technical support from https://order.mysql.com/ -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]
Re: InnoDB Hot Backup + MySQL embedded?
Dear Heikki, Thanks for the quick response! It never ceases to amaze me that such compartively small teams at Innobase Oy and MySQL AB produce such incredibly high-quality software. Being a final-year Software Engineering student, I'm curious as to what you consider the most difficult problem to solve in building InnoDB and ibbackup has been. Given the fact that you set your goals extremely high for InnoDB (and have acheived them quite handily), I want to ensure that if anything remotely similar comes up in my final-year project that I either put my hand up for it and take on the challenge or run screaming in the other direction and have a somewhat easier year. Regards, Chris Heikki Tuuri wrote: Chris, - Original Message - From: Chris Nolan [EMAIL PROTECTED] Newsgroups: mailing.database.myodbc Sent: Thursday, February 12, 2004 2:45 AM Subject: InnoDB Hot Backup + MySQL embedded? Hi all, I'm looking at developing an (open source) server-style application with the embedded MySQL library to be employed as the primary data store. Has anyone attempted to use InnoDB Hot Backup for such a beast? I ask as I do not know whether communication between ibbackup and the database engine is required (thus requiring a few changes to the embedded lib before compilation). A quick scan through the docs involved doesn't seem to point me in the right direction for a definitive answer on this. ibbackup can be used with the MySQL Embedded Server Library, no problem in that. ibbackup does not communicate with the mysqld server at all. It just reads the InnoDB data and log files. On the other hand, the innobackup Perl script does start a mysql connection to the server. Regards, Chris Best regards, Heikki Tuuri Innobase Oy http://www.innodb.com Foreign keys, transactions, and row level locking for MySQL InnoDB Hot Backup - a hot backup tool for InnoDB which also backs up MyISAM tables Order MySQL technical support from https://order.mysql.com/ -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]