#At file:///media/sda3/work/mysql/bzrwork/semisync/6.0/
2739 He Zhenxing 2008-10-23
BUG#40224 Optimized build of mysqld crashes when built with Sun Studio on SPARC
Fix a segmental fault problem caused by unaligned memory when
built with optimization on SPARC 64
modified:
sql/rpl_handler.cc
=== modified file 'sql/rpl_handler.cc'
--- a/sql/rpl_handler.cc 2008-09-23 15:06:18 +0000
+++ b/sql/rpl_handler.cc 2008-10-23 10:11:45 +0000
@@ -88,11 +88,11 @@ int get_user_var_str(const char *name, c
int delegates_init()
{
- static unsigned char trans_mem[sizeof(Trans_delegate)];
- static unsigned char storage_mem[sizeof(Binlog_storage_delegate)];
+ static unsigned long trans_mem[sizeof(Trans_delegate) / sizeof(unsigned long) + 1];
+ static unsigned long storage_mem[sizeof(Binlog_storage_delegate) / sizeof(unsigned long) + 1];
#ifdef HAVE_REPLICATION
- static unsigned char transmit_mem[sizeof(Binlog_transmit_delegate)];
- static unsigned char relay_io_mem[sizeof(Binlog_relay_IO_delegate)];
+ static unsigned long transmit_mem[sizeof(Binlog_transmit_delegate) / sizeof(unsigned long) + 1];
+ static unsigned int relay_io_mem[sizeof(Binlog_relay_IO_delegate)/ sizeof(unsigned long) + 1];
#endif
if (!(transaction_delegate= new (trans_mem) Trans_delegate)