Hi,
Thanks for fixing this. This patch solves the crash/core dump reported
in bug 40224.
Ok to push.
Olav
He Zhenxing wrote:
> #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)
>
>
>