| Bug #50409 | Solaris 8 compatibility broken by assumption about printstack() being present | ||
|---|---|---|---|
| Submitted: | 18 Jan 2010 12:20 | Modified: | 18 Jun 2010 1:15 |
| Reporter: | Kent Boortz | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Server: Compiling | Severity: | S2 (Serious) |
| Version: | 5.0.90, 5.1.43 | OS: | Solaris (8) |
| Assigned to: | Staale Smedseng | CPU Architecture: | Any |
[22 Jan 2010 13:40]
Georgi Kodinov
Setting target version to 5.0 : 5.0 build fails as well.
[26 Jan 2010 18:47]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/98237 2841 Staale Smedseng 2010-01-26 Bug#50409 Solaris 8 compatibility broken by assumption about printstack() being present When Bug#47391 was fixed, no assumption was made that support for Solaris 8 was needed. Solaris 8 lacks printstack(), and the build breaks because of this. This patch adds a test for the presence of printstack() to configure.in for 5.0, and uses HAVE_PRINTSTACK to make decisions rather than the __sun define.
[27 Jan 2010 10:39]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/98307 2841 Staale Smedseng 2010-01-27 Bug#50409 Solaris 8 compatibility broken by assumption about printstack() being present When Bug#47391 was fixed, no assumption was made that support for Solaris 8 was needed. Solaris 8 lacks printstack(), and the build breaks because of this. This patch adds a test for the presence of printstack() to configure.in for 5.0, and uses HAVE_PRINTSTACK to make decisions rather than the __sun define.
[4 Feb 2010 10:20]
Bugs System
Pushed into 5.1.44 (revid:joro@sun.com-20100204101444-2j32mhqroo0iiio6) (version source revid:aelkin@mysql.com-20100128095157-dkwe8691qj2tp9h7) (merge vers: 5.1.43) (pib:16)
[5 Feb 2010 11:50]
Bugs System
Pushed into mysql-next-mr (revid:alik@sun.com-20100204063540-9czpdmpixi3iw2yb) (version source revid:alik@sun.com-20100130212638-ai8t5v3u6647p6d2) (pib:16)
[5 Feb 2010 11:56]
Bugs System
Pushed into 6.0.14-alpha (revid:alik@sun.com-20100205113942-oqovjy0eoqbarn7i) (version source revid:alik@sun.com-20100204064210-ljwanqvrjs83s1gq) (merge vers: 6.0.14-alpha) (pib:16)
[5 Feb 2010 12:01]
Bugs System
Pushed into 5.5.2-m2 (revid:alik@sun.com-20100203172258-1n5dsotny40yufxw) (version source revid:alik@sun.com-20100130191336-i53i9wx67n81ridm) (merge vers: 5.5.2-m2) (pib:16)
[7 Feb 2010 16:48]
MC Brown
An entry has been added to the 5.1.44, 6.0.14, 5.5.2 changelog:
The <literal>printstack</literal> function does not exist ong
Solaris 8 or earlier, which would lead to a compilation
failure.
[12 Mar 2010 14:10]
Bugs System
Pushed into 5.1.44-ndb-7.0.14 (revid:jonas@mysql.com-20100312135944-t0z8s1da2orvl66x) (version source revid:jonas@mysql.com-20100312115609-woou0te4a6s4ae9y) (merge vers: 5.1.44-ndb-7.0.14) (pib:16)
[12 Mar 2010 14:26]
Bugs System
Pushed into 5.1.44-ndb-6.2.19 (revid:jonas@mysql.com-20100312134846-tuqhd9w3tv4xgl3d) (version source revid:jonas@mysql.com-20100312060623-mx6407w2vx76h3by) (merge vers: 5.1.44-ndb-6.2.19) (pib:16)
[12 Mar 2010 14:39]
MC Brown
No changelog entry required (already noted in 5.1.44 changelog)
[12 Mar 2010 14:41]
Bugs System
Pushed into 5.1.44-ndb-6.3.33 (revid:jonas@mysql.com-20100312135724-xcw8vw2lu3mijrhn) (version source revid:jonas@mysql.com-20100312103652-snkltsd197l7q2yg) (merge vers: 5.1.44-ndb-6.3.33) (pib:16)
[12 Mar 2010 15:42]
MC Brown
No changelog entry needed.
[25 Mar 2010 10:18]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/104294 3327 MySQL Build Team 2010-03-25 Backport of "Bug #50409 Solaris 8 compatibility broken by assumption about printstack() being present"
[12 Apr 2010 10:16]
Bugs System
Pushed into 5.1.47 (revid:build@mysql.com-20100412101220-adgau1r18kwgthps) (version source revid:build@mysql.com-20100412101220-adgau1r18kwgthps) (merge vers: 5.1.47) (pib:16)
[28 May 2010 6:00]
Bugs System
Pushed into mysql-next-mr (revid:alik@sun.com-20100524190136-egaq7e8zgkwb9aqi) (version source revid:vasil.dimov@oracle.com-20100331130613-8ja7n0vh36a80457) (pib:16)
[28 May 2010 6:29]
Bugs System
Pushed into 6.0.14-alpha (revid:alik@sun.com-20100524190941-nuudpx60if25wsvx) (version source revid:alik@sun.com-20100422150658-fkhgnwwkyugtxrmu) (merge vers: 6.0.14-alpha) (pib:16)
[28 May 2010 6:57]
Bugs System
Pushed into 5.5.5-m3 (revid:alik@sun.com-20100524185725-c8k5q7v60i5nix3t) (version source revid:alexey.kopytov@sun.com-20100429203306-tg0wz4y2xyx8edrl) (merge vers: 5.5.5-m3) (pib:16)
[28 May 2010 21:48]
Paul DuBois
Push resulted from incorporation of InnoDB tree. No changes pertinent to this bug. Re-closing.
[17 Jun 2010 12:04]
Bugs System
Pushed into 5.1.47-ndb-7.0.16 (revid:martin.skold@mysql.com-20100617114014-bva0dy24yyd67697) (version source revid:vasil.dimov@oracle.com-20100331130613-8ja7n0vh36a80457) (merge vers: 5.1.46) (pib:16)
[17 Jun 2010 12:47]
Bugs System
Pushed into 5.1.47-ndb-6.2.19 (revid:martin.skold@mysql.com-20100617115448-idrbic6gbki37h1c) (version source revid:vasil.dimov@oracle.com-20100331130613-8ja7n0vh36a80457) (merge vers: 5.1.46) (pib:16)
[17 Jun 2010 13:31]
Bugs System
Pushed into 5.1.47-ndb-6.3.35 (revid:martin.skold@mysql.com-20100617114611-61aqbb52j752y116) (version source revid:vasil.dimov@oracle.com-20100331130613-8ja7n0vh36a80457) (merge vers: 5.1.46) (pib:16)

Description: The change for stack tracing on Solaris assumes there is a printstack() function, something there is for Solaris 9 and up, but not Solaris 8. This makes the linking fail, in 5.0.90 from the symbol 'printstack' not being defined, in 5.1.43 from 'my_print_stacktrace' not being defined. The bug in 5.1.43 is that while the condition in the C source is on HAVE_PRINTSTACK, the check in the header file is still on '__sun' How to repeat: Just compile from source on Solaris 8. Suggested fix: I suggest that the configure check done in 5.1.43 for finding 'printstack' is backported to 5.0.91, and the conditional compilation check HAVE_PRINTSTACK instead of '__sun'. Also, this has to be reflected in the header "stacktrace.c" or "my_stacktrace.h", to check on HAVE_PRINTSTACK. In 5.1.43 something like *** a/include/my_stacktrace.h.ORIG 2010-01-15 18:14:41.023218000 +0100 --- b/include/my_stacktrace.h 2010-01-17 23:24:47.581003000 +0100 *************** *** 23,29 **** (defined(__alpha__) && defined(__GNUC__)) #define HAVE_STACKTRACE 1 #endif ! #elif defined(__WIN__) || defined(__sun) #define HAVE_STACKTRACE 1 #endif --- 23,31 ---- (defined(__alpha__) && defined(__GNUC__)) #define HAVE_STACKTRACE 1 #endif ! #elif defined(__WIN__) ! #define HAVE_STACKTRACE 1 ! #elif defined(HAVE_PRINTSTACK) #define HAVE_STACKTRACE 1 #endif