Bug #6772 Prebuilt 4.1.7 binaries for Solaris x86 fail on Pentium III
Submitted: 23 Nov 2004 15:40 Modified: 6 Oct 2005 2:35
Reporter: Peter Tribble
Status: Closed
Category:Server: Compiling Severity:S3 (Non-critical)
Version:4.1.7 OS:Sun Solaris (Solaris 9/10 x86)
Assigned to: Lenz Grimmer Target Version:

[23 Nov 2004 15:40] Peter Tribble
Description:
Attempting to use the downloaded 4.1.7 binary distribution for Solaris 9 on x86.

A simple test gives me:

% /usr/local/mysql/bin/mysql --version
Illegal instruction (core dumped)

On any Pentium III based system; it works fine on Pentium IV based machines.

The binaries are stripped, but I can see from one of the libraries that it was built
using the
Studio 9 compiler and -xtarget=native (presumably via the -fast flag). This flag is
problematic as it generates cpu-specific optimizations and instructions.

How to repeat:
Try running mysql on a Pentium III based Solaris x86 machine.

Suggested fix:
Don't use -fast, or explicitly add -xtarget=generic.
[10 Jan 2005 8:53] Hartmut Holzgraefe
I tried both mysql-standard-4.1.7-pc-solaris2.9-i386.tar.gz  and
mysql-standard-4.1.8-pc-solaris2.9-i386.tar.gz with Solaris 9 x86 
installed on a P3mobile system (within vmware) without any
problems
[21 Jan 2005 13:53] Peter Tribble
It still fails for me every time on a PIII system.  And 4.1.8 and 4.1.9 fail as well.

Just for reference, I'm using PIII Xeon 5550MHz (Dell 6350) and PIII 1.4GHz (Sun LX50)
with kernel 112234-11. PIV based systems running the same revision of Solaris work fine.
[29 Sep 2005 14:59] Lenz Grimmer
Bug#9283 was marked as a duplicate of this bug.
[29 Sep 2005 15:02] Lenz Grimmer
BUG#9283 reported similar problems on Solaris 10. We need to double check the compile
options on these platforms - most likely the optimization flags need to be adjusted.
[29 Sep 2005 15:12] Lenz Grimmer
The compile flags for the Solaris 8/9/10 x86 binaries indeed contained "-xtarget=native".
They have now been changed to "-xtarget=generic" to support PIII systems as well and to
avoid the "illegal instruction" crash.

The upcoming releases of MySQL (4.0.27, 4.1.15 and 5.0.14) will be built with these
flags.
[6 Oct 2005 2:35] Paul DuBois
Noted in 4.0.27, 4.1.15, 5.0.14 changelogs.