MySQL crashme test and PostgreSQL - Mailing list pgsql-hackers
From | Bruce Momjian |
---|---|
Subject | MySQL crashme test and PostgreSQL |
Date | |
Msg-id | 200005210313.XAA04165@candle.pha.pa.us Whole thread Raw |
In response to | Re: Performance (was: The New Slashdot Setup (includes MySql server)) ("Matthias Urlichs" <smurf@noris.net>) |
Responses |
Re: MySQL crashme test and PostgreSQL
|
List | pgsql-hackers |
[CC: to general list.] > > > What does the official standard say (assuming any exists) -- is the "to" > > > optional or not? > > > > I don't see any RENAME in the SQL92 spec. Now, how hard is it to do a > > 'man alter_table' and see what it says at the top of the screen? > > > It's not a question of your manpage vs. their manpage. I can read your > manpage just fine. It's a question of whether there is something that > can be regarded as a standard on it or not. "Official" is a poor wording > in this case -- sorry. > > If yes, then the test will be changed to do it the standard way. > If no, then I might have to test for both syntaxes, which is a PITA. > You know, you are asking what syntax is SQL standard. It is actually not our job to report it to you. If you are responsible for the test, you should know what the standard says, and test against that. If you are not responsible for the test, then it shows that the person who is responsible for the test doesn't care enough to test for SQL standard syntax, only for MySQL syntax. You know, there is a saying, "Do it right, or don't do it at all." That is pretty much the PostgreSQL style. And if you are going to criticize someone, you better be sure you are right. We didn't write the crashme test, we don't host it on our web site, we didn't ask to be in it. Someone has to be responsible for the test, and knowing standard SQL syntax, and that must be whoever put it on the MySQL site. We really don't want to hear that it dropped from the sky and landed on the MySQL site, and no one there is responsible for it. If we put something on our site, we are responsible for it. If we don't like something or can't take ownership of it, we remove it. Now, I am not picking on you. You may have the best of intentions. But basically someone has decided to put it on the MySQL site, and has not considered it worth their while to learn the SQL standard. They would rather make other people tell them about the SQL standard, and maybe, just maybe, we will fix the test someday. Well, I will tell you, we have better things to do than fix the MySQL crashme test. > What matters is that your opinion is that they are responsible for making > the test 100% accurate. Their reply to that is that many database > vendors actually provided fixes for this test instead of bitching > about how inaccurate it is, thus they feel the obligation is on your > side. BINGO! You know, if other database vendors are stupid enough to do MySQL's work for them and read the SQL standard for them, well... You can't just point fingers and say no one at MySQL is responsible. The MySQL bias is written all through that test. > Now I am of neither side. I am, IMHO, thus in a position to ask you > about your opinion of these inaccuracies, I am going to change > the crashme test to be a whole lot more accurate WRT PostgreSQL, > I will feed these changes back to the MySQL people, and they'll > incorporate these changes into their next release. (Their head honcho > (Monty) has said so on their mailing list. I _am_ going to take him up > on it, and I can be quite obnoxious if somebody reneges on a promise. > *EVIL*GRIN* ) You know, how do we know he is not just saying that hoping no one will actually take him up on it. You know, Monty was on this list last year, and he asked why we had a bad attitude about MySQL, and we told him about the crashme test, and you know, nothing happened. So I don't think it is very important to Monty to be fair, or more accurately, he would rather keep a test that makes MySQL look good, than to spend time making the test fair. He made his choice. I can tell you our reaction would be totally different. > I might add that their test lists 52 features of PostgreSQL which > MySQL doesn't have (13 functions). It also lists 122 features of MySQL > which PostgreSQL doesn't have; 78 of those are extra functions (40 of > these, just for M$-ODBC compatibility). > > So it seems that overall, that crash-me test result is reasonably > balanced (39 vs. 44 non-function differences -- let's face it, adding > another function for compatibility with SQL variant FOO is one of the > easier exercises here, whatever the current value of FOO is). You have to make the test deceptive to get MySQL to be on par with PostgreSQL. Period. Doesn't MySQL admit they have fewer features than PostgreSQL. How did MySQL get an equal score on features? Answer me that one. We have given enough of our time to this, and have pointed out many problems. Why don't you go an get those fixed, to show that the MySQL group is working in good faith on this, and then, go and get a copy of the standard, or a book about standard SQL, and start actually doing something about the test. And if it is not worth your time, and it is not worth any one else's time at MySQL, then you folks have to admit you want to criticize PostgreSQL without spending time to be fair about it. I am going to suggest that no one else in the PostgreSQL group send any more problem reports about the crashme tests until some changes appear on the MySQL end. Tom Lane has already done a great job of illustrating the issues involved. Pointing to actual SQL items is not the real problem. The MySQL attitude about crashme is the problem. Also, I have heard about the hit squads attacking MySQL. I never condone inaccuracy or attacks, but I can understand why it is happening. For years, I believe the deceptiveness of the MySQL crashme test has hampered acceptance of PostgreSQL. And our response was to just reply with our opinion when asked about it. We didn't create a web page to attack MySQL and make them look bad. We believed that in the end, truth always wins. So we kept going, and you know, in the end, truth does win. We have a $25 million dollar company forming around PostgreSQL, with maybe more to come. We are on our way up, even though the MySQL crashme test delayed us. And there is a saying "If you are not nice to people on your way up, they will not be nice to you on the way down." I bet the hit squads are frustrated people who have seen unfair things said about PostgreSQL for years, with nothing they could do about it. Now they can do something, and they are talking. But instead of one web page with deceptive results, you have 100 people all over the net slamming MySQL. There is a certain poetic justice in that. The saying goes, "Oh what a tangled web we weave, When first we practice to deceive". -- Bruce Momjian | http://www.op.net/~candle pgman@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026
pgsql-hackers by date: