Oracle’s Tom Kyte on MySQL Error Messages and Sorting Rules

Apr 2, 2007 / By Paul Vallee

Tags: ,

Those of you who, like we do here at Pythian, have the pleasure of supporting both MySQL and Oracle environments (among others) will definitely know who Tom Kyte is. He is a VP of Oracle in the Public Sector group, but he’s much more well-known for his Ask Tom site, where he has been the tech voice that, by the end of his run, will have defined a generation of Oracle technologists much in the same pervasive way “Mr. Dressup” influenced a generation of Canadian children, including myself.

In any event, reading his blog today I noticed that over the weekend he posted on an error message blurted out of a wordpress environment… something about how the “[MySQL server has gone away]“. This tickled his funny bone and the message also included some SQL, which made Tom comment on how, exactly, can MySQL sort on data points that have been stripped earlier in the SQL… Psst. If you guys at MySQL actually know how to achieve this feat, don’t tell Tom!!! He’s an Oracle insider!!! Oh wait, darn, the source code is open. :-)

I might mention that Alex Gorbachev had also previously commented on MySQL’s peculiar non-deterministic handling of data post group-by here on the Pythian Blog.

Note: about the quaint and friendly “has gone away” comment. Here’s how this might have looked in Oracle:

Tue Nov 8 16:58:02 2005
Errors in file /oracle/oradb/admin/R03RTBA7/bdump/r03rtba7_pmon_17082.trc:
ORA-00471: DBWR process terminated with error
Tue Nov 8 16:58:02 2005
PMON: terminating instance due to error 471
Instance terminated by PMON, pid = 17082

In this case, the database writer died because of a terminal failure writing to disk, and when PMON noticed, it kills the whole instance. At this point, we can safely say that Oracle will have… ummm…. “gone away”. That snippet from an Oracle alert log brought to you courtesy of Alex Gorbachev and Pythian Support Track.

Leave a Reply

  • (will not be published)

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>