Bug #10918 | Dumps core | ||
---|---|---|---|
Submitted: | 27 May 2005 15:13 | Modified: | 14 Jul 2005 10:29 |
Reporter: | Boyd GERBER | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: Installing | Severity: | S1 (Critical) |
Version: | 4.1.12 | OS: | UnixWare 7.1.4 or OpenServer 6.0 |
Assigned to: | Paul DuBois | CPU Architecture: | Any |
[27 May 2005 15:13]
Boyd GERBER
[27 May 2005 15:16]
Boyd GERBER
This is a critical bug as MySQL 4.1.11 did not have the problem.
[27 May 2005 15:27]
Boyd GERBER
I sent the full trace file to bugs@lists.mysql.com > T@1 : | | | | | | my: size: 8192 my_flags: 16 > T@1 : | | | | | | exit: ptr: 0x854e788 > T@1 : | | | | | <my_malloc > T@1 : | | | | <init_dynamic_array > T@1 : | | | | >init_alloc_root > T@1 : | | | | | enter: root: 0x8548f50 > T@1 : | | | | | >my_malloc > T@1 : | | | | | | my: size: 32784 my_flags: 0 > T@1 : | | | | | | exit: ptr: 0x8550790 > T@1 : | | | | | <my_malloc > T@1 : | | | | <init_alloc_root > T@1 : | | | <my_dir > T@1 : | | | >my_dirend > T@1 : | | | | >my_free > T@1 : | | | | | my: ptr: 0x854e788 > T@1 : | | | | <my_free > T@1 : | | | | >free_root > T@1 : | | | | | enter: root: 0x8548f50 flags: 0 > T@1 : | | | | | >my_free > T@1 : | | | | | | my: ptr: 0x8550790 > T@1 : | | | | | <my_free > T@1 : | | | | <free_root > T@1 : | | | | >my_free > T@1 : | | | | | my: ptr: 0x8548f30 > T@1 : | | | | <my_free > T@1 : | | | <my_dirend > T@1 : | | <find_uniq_filename > T@1 : | | >my_open > T@1 : | | | my: Name: > '/home/mount/zensco/local/zenez/build/mysql-4.1.12/mysq > l-test/var/log/master-bin.000001' Flags: 265 MyFlags: 48 > T@1 : | | <my_open > T@1 : | | >my_malloc > T@1 : | | | my: size: 87 my_flags: 48 > T@1 : | | | exit: ptr: 0x854af80 > T@1 : | | <my_malloc > T@1 : | | exit: fd: 7 > T@1 : | | >my_tell > T@1 : | | | my: Fd: 7 MyFlags: 16 > T@1 : | | | exit: pos: 0 > T@1 : | | <my_tell > T@1 : | | >init_io_cache > T@1 : | | | enter: cache: 0x8443264 type: 1 pos: 0 > T@1 : | | | >my_malloc > T@1 : | | | | my: size: 8192 my_flags: 52 > T@1 : | | | | exit: ptr: 0x854e788 > T@1 : | | | <my_malloc > T@1 : | | | info: init_io_cache: cachesize = 8192 > T@1 : | | <init_io_cache > T@1 : | | >fn_format > T@1 : | | | enter: name: > /home/mount/zensco/local/zenez/build/mysql-4.1.12/my > sql-test/var/log/master-bin dir: . extension: .index flag: 6 > T@1 : | | | >dirname_part > T@1 : | | | | enter: > '/home/mount/zensco/local/zenez/build/mysql-4.1.12/mysql > -test/var/log/master-bin' > T@1 : | | | <dirname_part > T@1 : | | | >unpack_dirname > T@1 : | | | | >dirname_part > T@1 : | | | | | enter: > '/home/mount/zensco/local/zenez/build/mysql-4.1.12/mys > ql-test/var/log/' > T@1 : | | | | <dirname_part > T@1 : | | | | >cleanup_dirname > T@1 : | | | | | enter: from: > '/home/mount/zensco/local/zenez/build/mysql-4.1. > 12/mysql-test/var/log/' > T@1 : | | | | | exit: to: > '/home/mount/zensco/local/zenez/build/mysql-4.1.12/ > mysql-test/var/log/' > T@1 : | | | | <cleanup_dirname > T@1 : | | | <unpack_dirname > T@1 : | | | >strlength > T@1 : | | | <strlength > T@1 : | | <fn_format > T@1 : | | >my_open > T@1 : | | | my: Name: > '/home/mount/zensco/local/zenez/build/mysql-4.1.12/mysq > l-test/var/log/master-bin.index' Flags: 258 MyFlags: 16 > T@1 : | | <my_open > T@1 : | | >my_malloc > T@1 : | | | my: size: 86 my_flags: 16 > T@1 : | | | exit: ptr: 0x854afe0 > T@1 : | | <my_malloc > T@1 : | | exit: fd: 8 > T@1 : | | >my_sync > T@1 : | | | my: Fd: 8 my_flags: 16 > T@1 : | | <my_sync > T@1 : | | >my_seek > T@1 : | | | my: Fd: 8 Hpos: 0 Pos: 0 Whence: 2 MyFlags: 0 > T@1 : | | <my_seek > T@1 : | | >init_io_cache > T@1 : | | | enter: cache: 0x8443350 type: 1 pos: 0 > T@1 : | | | >my_malloc > T@1 : | | | | my: size: 8192 my_flags: 48 > T@1 : | | | | exit: ptr: 0x8550790 > T@1 : | | | <my_malloc > T@1 : | | | info: init_io_cache: cachesize = 8192 > T@1 : | | <init_io_cache > T@1 : | | >my_b_flush_io_cache > T@1 : | | | >my_seek > T@1 : | | | | my: Fd: 7 Hpos: 0 Pos: 0 Whence: 0 MyFlags: 0 > T@1 : | | | <my_seek > T@1 : | | | >my_write > T@1 : | | | | my: Fd: 7 Buffer: 0x854e788 Count: 79 MyFlags: 52 > T@1 : | | | <my_write > T@1 : | | <my_b_flush_io_cache > T@1 : | | >my_sync > T@1 : | | | my: Fd: 7 my_flags: 16 > T@1 : | | <my_sync > T@1 : | | >my_b_flush_io_cache > T@1 : | | | >my_seek > T@1 : | | | | my: Fd: 8 Hpos: 0 Pos: 0 Whence: 0 MyFlags: 0 > T@1 : | | | <my_seek > T@1 : | | | >my_write > T@1 : | | | | my: Fd: 8 Buffer: 0x8550790 Count: 87 MyFlags: 52 > T@1 : | | | <my_write > T@1 : | | <my_b_flush_io_cache > T@1 : | | >my_sync > T@1 : | | | my: Fd: 8 my_flags: 16 > T@1 : | | <my_sync > T@1 : | <MYSQL_LOG::open > T@1 : | >berkeley_init > T@1 : | | bdb: berkeley_home: > /home/mount/zensco/local/zenez/build/mysql-4.1. > 12/mysql-test/var/master-data/
[27 May 2005 16:54]
MySQL Verification Team
Boyd, Can you please provide us with some feedback. Most notably: * Can you run debug binary in gdb and provide us with the output from the command: bt full * Did 4.1.11 also exhibit that message "Can't change rlimit to infinity ..." * Can you check whether this patch is compatible fully with SCO. Code was changed from: #ifdef HAVE_GETRLIMIT if (test_flags & TEST_CORE_ON_SIGNAL) { /* Change limits so that we will get a core file */ struct rlimit rl; rl.rlim_cur = rl.rlim_max = RLIM_INFINITY; if (setrlimit(RLIMIT_CORE, &rl) && global_system_variables.log_warnings) sql_print_warning("setrlimit could not change the size of core files to 'infinity'; We may not be able to generate a core file on signals"); } #endif to: #ifdef HAVE_GETRLIMIT if (test_flags & TEST_CORE_ON_SIGNAL) { /* Change limits so that we will get a core file */ STRUCT_RLIMIT rl; rl.rlim_cur = rl.rlim_max = RLIM_INFINITY; if (setrlimit(RLIMIT_CORE, &rl) && global_system_variables.log_warnings) sql_print_warning("setrlimit could not change the size of core files to 'infinity'; We may not be able to generate a core file on signals"); } #endif
[27 May 2005 17:56]
Boyd GERBER
GNU gdb 5.0pl1 (release) OU8.0 Copyright 2000 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i586-unknown-sysv5"... /home/mount/zensco/local/zenez/build/mysql-4.1.12/mysql-test/var/tmp/gdbinit .master:2 Error in sourced command file: Dwarf Error: Cannot handle DW_FORM_indirect in DWARF reader. This worked on mysql-4.1.11 I do see sometimes the message on mysql-4.1.11 but not all the time. #ifdef HAVE_GETRLIMIT if (test_flags & TEST_CORE_ON_SIGNAL) { /* Change limits so that we will get a core file */ struct rlimit rl; rl.rlim_cur = rl.rlim_max = RLIM_INFINITY; if (setrlimit(RLIMIT_CORE, &rl) && global_system_variables.log_warnings) sql_print_warning("setrlimit could not change the size of core files to 'infinity'; We may not be able to generate a core file on signals"); } #endif Does not give me the core dump where #ifdef HAVE_GETRLIMIT if (test_flags & TEST_CORE_ON_SIGNAL) { /* Change limits so that we will get a core file */ STRUCT_RLIMIT rl; rl.rlim_cur = rl.rlim_max = RLIM_INFINITY; if (setrlimit(RLIMIT_CORE, &rl) && global_system_variables.log_warnings) sql_print_warning("setrlimit could not change the size of core files to 'infinity'; We may not be able to generate a core file on signals"); } #endif If I appiled it in the right place.
[27 May 2005 18:18]
Boyd GERBER
Here is a diff of the config.h files. $ diff config.h ../mysql-4.1.11/config.h 112,114d111 < /* Define to enable charset cp932 */ < #define HAVE_CHARSET_cp932 1 < 207a205,207 > /* Whether we are using OSF1 DEC threads on 3.2 */ > /* #undef HAVE_DEC_3_2_THREADS */ > 330c330 < /* #undef HAVE_HIST_ENTRY */ --- > #define HAVE_HIST_ENTRY 1 476,481d475 < /* NPTL threads implementation */ < /* #undef HAVE_NPTL */ < < /* Define to 1 if the system has the type `off_t'. */ < #define HAVE_OFF_T 1 < 642,644d635 < /* Define to 1 if the system has the type `sigset_t'. */ < /* #undef HAVE_SIGSET_T */ < 651,653d641 < /* Define to 1 if the system has the type `size_t'. */ < #define HAVE_SIZE_T 1 < 860,862d847 < /* certain Japanese customer */ < /* #undef HAVE_UTF8_GENERAL_CS */ < 869,871d853 < /* Define to 1 if the system has the type `u_int32_t'. */ < /* #undef HAVE_U_INT32_T */ < 909c891 < #define NDB_VERSION_BUILD 12 --- > #define NDB_VERSION_BUILD 11 1003,1005d984 < /* The struct rlimit type to use with setrlimit */ < #define STRUCT_RLIMIT struct rlimit < 1009,1011d987 < /* Whether we build for Linux */ < /* #undef TARGET_OS_LINUX */ < 1049c1025 < #define VERSION "4.1.12" --- > #define VERSION "4.1.11"
[27 May 2005 18:27]
MySQL Verification Team
HI Boyd, First, please provide me with context diff, not unified diff ... Second, is STRUCT RLIMIT compatible with SCO ?? Third, you have to build mysql properly in order to be able to debug. Fourth, please try building gdb 6.3 on your SCO. Unless SCO has come with some indeginous debugger.
[27 May 2005 20:25]
Boyd GERBER
*** config.h Fri May 27 20:15:56 2005 --- ../mysql-4.1.12/config.h Fri May 27 01:40:53 2005 *************** *** 109,114 **** --- 109,117 ---- /* Define to enable charset cp866 */ /* #undef HAVE_CHARSET_cp866 */ + /* Define to enable charset cp932 */ + #define HAVE_CHARSET_cp932 1 + /* Define to enable charset dec8 */ /* #undef HAVE_CHARSET_dec8 */ *************** *** 202,210 **** /* Define to 1 if you have the `cuserid' function. */ #define HAVE_CUSERID 1 - /* Whether we are using OSF1 DEC threads on 3.2 */ - /* #undef HAVE_DEC_3_2_THREADS */ - /* Whether we are using DEC threads */ --- 205,210 ---- *************** *** 473,478 **** --- 473,484 ---- /* sigwait with one argument */ #define HAVE_NONPOSIX_SIGWAIT 1 + /* NPTL threads implementation */ + /* #undef HAVE_NPTL */ + + /* Define to 1 if the system has the type `off_t'. */ + #define HAVE_OFF_T 1 + /* OpenSSL */ #define HAVE_OPENSSL 1 *************** *** 633,638 **** --- 639,647 ---- /* Define to 1 if you have the `sigset' function. */ #define HAVE_SIGSET 1 + /* Define to 1 if the system has the type `sigset_t'. */ + /* #undef HAVE_SIGSET_T */ + /* Define to 1 if you have the `sigthreadmask' function. */ /* #undef HAVE_SIGTHREADMASK */ *************** *** 639,644 **** --- 648,656 ---- /* POSIX sigwait */ /* #undef HAVE_SIGWAIT */ + /* Define to 1 if the system has the type `size_t'. */ + #define HAVE_SIZE_T 1 + /* Define to 1 if you have the `snprintf' function. */ #define HAVE_SNPRINTF 1 *************** *** 845,850 **** --- 857,865 ---- /* sighold() is present and usable */ /* #undef HAVE_USG_SIGHOLD */ + /* certain Japanese customer */ + /* #undef HAVE_UTF8_GENERAL_CS */ + /* Define to 1 if you have the <utime.h> header file. */ #define HAVE_UTIME_H 1 *************** *** 851,856 **** --- 866,874 ---- /* Define to 1 if `utime(file, NULL)' sets file's timestamp to the present. */ #define HAVE_UTIME_NULL 1 + /* Define to 1 if the system has the type `u_int32_t'. */ + /* #undef HAVE_U_INT32_T */ + /* Define to 1 if you have the <varargs.h> header file. */ #define HAVE_VARARGS_H 1 *************** *** 888,894 **** /* #undef NDB_SHM_TRANSPORTER */ /* NDB build version */ ! #define NDB_VERSION_BUILD 11 /* NDB major version */ #define NDB_VERSION_MAJOR 4 --- 906,912 ---- /* #undef NDB_SHM_TRANSPORTER */ /* NDB build version */ ! #define NDB_VERSION_BUILD 12 /* NDB major version */ #define NDB_VERSION_MAJOR 4 *************** *** 982,990 **** --- 1000,1014 ---- /* d_namlen member present in struct dirent */ /* #undef STRUCT_DIRENT_HAS_D_NAMLEN */ + /* The struct rlimit type to use with setrlimit */ + #define STRUCT_RLIMIT struct rlimit + /* Name of system, eg solaris */ #define SYSTEM_TYPE "unknown-sysv5UnixWare7.1.4" + /* Whether we build for Linux */ + /* #undef TARGET_OS_LINUX */ + /* Define if you want to have threaded code. This may be undef on client code */ #define THREAD 1 *************** *** 1022,1028 **** /* #undef USE_RAID */ /* Version number of package */ ! #define VERSION "4.1.11" /* sighandler type is void (*signal ()) (); */ #define VOID_SIGHANDLER 1 --- 1046,1052 ---- /* #undef USE_RAID */ /* Version number of package */ ! #define VERSION "4.1.12" /* sighandler type is void (*signal ()) (); */ #define VOID_SIGHANDLER 1
[28 May 2005 22:44]
Boyd GERBER
Stack debug> stack Stack Trace for p1.1, Program mysqld *[0] __lwp_kill(presumed: 0x1, 0xb, 0xbfc3fbb4) [0xbffc0a4c] [1] thr_kill(presumed: 0x1, 0xb, 0xbfc3ef5c) [0xbfc32557] [2] pthread_kill(presumed: 0x1, 0xb, 0xb) [0xbfc26288] [3] write_core(0xb, 0x8464d88, 0x8464d88, 0x82b9d58) [0x81768c4] [4] handle_segfault(0xb, 0x8046148, 0x8045d38) [0x80b3aea] [5] _thr_sigacthandler(presumed: 0xb, 0x8046148, 0x8045d38) [0xbfc30686] [6] vfprintf(presumed: 0x813d740, 0xbff5f77c, 0x80462c0) [0xbffacf50] [7] __db_errfile(0x847aa88, 0, 0, 0xbff5f77c, 0x80462c0) [0xbfef820c] [8] __db_err(presumed: 0x847aa88, 0xbff5f77c, 0x8365020) [0xbfef80bc] [9] __dbenv_set_rpc_server_noclnt(presumed: 0x847aa88, 0x813d760, 0x847aa88) [0xbff0d3ca] [10] berkeley_init(void)(presumed: 0x100000, 0x804630c, 0x80b4422) [0x813d32e] [11] ha_init(void)(presumed: 0x80463a8, 0x4, 0x8046324) [0x81352a0] [12] init_server_components(void)(presumed: 0x8046344, 0x8319230, 0) [0x80b441d] [13] main(0x18, 0x8046344, 0x80463a8) [0x80b4766] [14] _start() [0x805256c] debug> dis Disassembly for p1.1, Program mysqld 0xbffc0a4c (__lwp_kill+12:) ret 0xbffc0a4d (..............) nop 0xbffc0a4e (..............) nop 0xbffc0a4f (..............) nop 0xbffc0a50 (__lwp_sema_p+0:) movl $0xd0,%eax 0xbffc0a55 (__lwp_sema_p+5:) lcall 0x7,0 0xbffc0a5c (__lwp_sema_p+12:) ret 0xbffc0a5d (..............) nop 0xbffc0a5e (..............) nop 0xbffc0a5f (..............) nop # debug -c core.29628 /zenez/build/mysql-4.1.12-debug/sql/mysqld Core image of mysqld (process p1) created Created core image(s) of 1 thread(s) for process p1 CORE FILE [__lwp_kill] SIGNALED 11 (segv address[0x73bc]) in p1.1 0xbffc0a4c (__lwp_kill+12:) ret debug> stack Stack Trace for p1.1, Program mysqld *[0] __lwp_kill(presumed: 0x1, 0xb, 0xbfc3fbb4) [0xbffc0a4c] [1] thr_kill(presumed: 0x1, 0xb, 0xbfc3ef5c) [0xbfc32557] [2] pthread_kill(0x1, 0xb) [0xbfc26288] [3] write_core(sig=11) [stacktrace.c@220] [4] handle_segfault(sig=11, 0x8046064, 0x8045c54) [mysqld.cc@1957] [5] _thr_sigacthandler(presumed: 0xb, 0x8046064, 0x8045c54) [0xbfc30686] [6] vfprintf(presumed: 0x8180374, 0xbff5f77c, 0x80461dc) [0xbffacf50] [7] __db_errfile(0x8549168, 0, 0, 0xbff5f77c, 0x80461dc) [0xbfef820c] [8] __db_err(presumed: 0x8549168, 0xbff5f77c, 0x804626c) [0xbfef80bc] [9] __dbenv_set_rpc_server_noclnt(0x8549168, 0x8180394) [0xbff0d3ca] [10] berkeley_init(void)(presumed: 0x80462d0, 0x8046230, 0x80d139d) [ha_berkeley.cc@141] [11] ha_init(void)(presumed: 0, 0x100000, 0x8432fac) [handler.cc@266] [12] init_server_components(void)(presumed: 0x30000, 0x852da10, 0x80462d0) [mysqld.cc@2742] [13] main(argc=24, argv=0x804626c, 0x80462d0) [mysqld.cc@3030] [14] _start() [0x805284c]
[28 May 2005 22:51]
Boyd GERBER
$ grep -i rlimit /usr/include/*/* /usr/include/nfs/nfs.h:#define NFS_RLIMIT_OK(offset, limit) \ /usr/include/nfs/nfs.h:#define NFS_U_RLIMIT_FSIZE (u.u_rlimits->rl_limits[RLIMIT_FSIZE].rlim_cur) /usr/include/schily/xconfig.h:#define HAVE_SYS_RESOURCE_H 1 /* to use sys/resource.h for rlimit() and wait3() */ /usr/include/schily/xconfig.h:#define HAVE_GETRLIMIT 1 /* getrlimit() is present in libc */ /usr/include/schily/xconfig.h:#define HAVE_SETRLIMIT 1 /* setrlimit() is present in libc */ /usr/include/sys/audit.h:#define ADT_SETRLIMIT 89 /* setrlimit(2)*/ /usr/include/sys/audit.h:#define ADT_SETRLIMIT64 114 /* setrlimit64(2) */ /usr/include/sys/auditrec.h: * SETRLIMIT record: setrlimit(2) /usr/include/sys/lwp.h:#define EVF_PL_RLIMIT 0x00000004 /* process resource limits changed */ /usr/include/sys/lwp.h:#define UPDATE_FLAGS (EVF_PL_CRED|EVF_PL_RDIR|EVF_PL_RLIMIT|EVF_L_SCHEDPARM) /usr/include/sys/lwp.h:#define INHERIT_FLAGS (EVF_PL_CRED|EVF_PL_RDIR|EVF_PL_RLIMIT| \ /usr/include/sys/proc.h: struct rlimits *p_rlimits; /usr/include/sys/resource.h:#define RLIMIT_CPU 0 /* cpu time in milliseconds */ /usr/include/sys/resource.h:#define RLIMIT_FSIZE 1 /* maximum file size */ /usr/include/sys/resource.h:#define RLIMIT_DATA 2 /* data size */ /usr/include/sys/resource.h:#define RLIMIT_STACK 3 /* stack size */ /usr/include/sys/resource.h:#define RLIMIT_CORE 4 /* core file size */ /usr/include/sys/resource.h:#define RLIMIT_NOFILE 5 /* file descriptors */ /usr/include/sys/resource.h:#define RLIMIT_VMEM 6 /* maximum mapped memory */ /usr/include/sys/resource.h:#define RLIMIT_AS RLIMIT_VMEM /usr/include/sys/resource.h: * Structure used by the get/setrlimit(2) system calls. /usr/include/sys/resource.h:struct rlimit { /usr/include/sys/resource.h: * Structure used by the get/setrlimit64(2) system calls. /usr/include/sys/resource.h: rlimit64 /usr/include/sys/resource.h:} rlimit64_t; /usr/include/sys/resource.h:typedef struct rlimits { /usr/include/sys/resource.h: struct rlimit rl_limits[RLIM_NLIMITS]; /* resource limits */ /usr/include/sys/resource.h:} rlimits_t; /usr/include/sys/resource.h:extern struct rlimits *sys_rlimits; /* system resource limits */ /usr/include/sys/resource.h:extern rlimits_t *rlget(void); /* get a new rlimits object */ /usr/include/sys/resource.h:extern void rlholdn(rlimits_t *, uint_t);/* get n references to rlimits object */ /usr/include/sys/resource.h:extern void rlfreen(rlimits_t *, uint_t);/* release n references */ /usr/include/sys/resource.h:extern void rlinstall(rlimits_t *); /* install new rlimits for process */ /usr/include/sys/resource.h:extern int rlimit(int, rlim_t, rlim_t); /* change the given resource limit */ /usr/include/sys/resource.h:extern int rlimit_stack(rlim_t, rlim_t);/* change AS for new stack limits */ /usr/include/sys/resource.h:#define rlhold(rlimitsp) rlholdn((rlimitsp), 1)/* hold one reference */ /usr/include/sys/resource.h:#define rlfree(rlimitsp) rlfreen((rlimitsp), 1)/* release one reference */ /usr/include/sys/resource.h:extern int getrlimit(int, struct rlimit *); /usr/include/sys/resource.h:extern int setrlimit(int, const struct rlimit *); /usr/include/sys/resource.h:extern int getrlimit64(int, rlimit64_t *); /usr/include/sys/resource.h:extern int setrlimit64(int, const rlimit64_t *); /usr/include/sys/resource.h:extern int getrlimit(); /usr/include/sys/resource.h:extern int setrlimit(); /usr/include/sys/resource.h:extern int getrlimit64(); /usr/include/sys/resource.h:extern int setrlimit64(); /usr/include/sys/resource.h:#define rlimit rlimit64 /usr/include/sys/resource.h:#define getrlimit(n,r) getrlimit64(n,r) /usr/include/sys/resource.h:#define setrlimit(n,r) setrlimit64(n,r) /usr/include/sys/syscall.h:#define SYS_setrlimit 128 /usr/include/sys/syscall.h:#define SYS_getrlimit 129 /usr/include/sys/syscall.h:#define SYS_getrlimit64 220 /usr/include/sys/syscall.h:#define SYS_setrlimit64 221 /usr/include/sys/user.h: struct rlimits *u_rlimits; /* LWP view of proc resource limits */ /usr/include/sys/vmparam.h:#define UVMEM_STACK_RATIO 4 /* max ratio for UV rlimits */ /usr/include/sys/vmparam.h: /* (RLIMIT_VMEM / RLIMIT_STACK) */ $
[30 May 2005 12:39]
MySQL Verification Team
Boyd, Thanks for the info ... Evidently, Berkeley DB that is now supplied with MySQL is not tested at all on SCO. As it is not used so widely, I suggest you just add: --with-berkeley-db=no and try again. Regarding config.h changes, most should be neglected. But some should not. Seems unlikely that SCO does not have types: * off_t *sizeof_t Please also check if it is OK that STRUCT_RLIMIT is mapped into struct rlimit.
[30 May 2005 12:41]
MySQL Verification Team
Boyd, Thanks for the info ... Evidently, Berkeley DB that is now supplied with MySQL is not tested at all on SCO. As it is not used so widely, I suggest you just add: --with-berkeley-db=no and try again. Regarding config.h changes, most should be neglected. But some should not. Seems unlikely that SCO does not have types: * off_t *sizeof_t Please also check if it is OK that STRUCT_RLIMIT is mapped into struct rlimit. Skip the last one. The last one is just fine !!!!
[30 May 2005 20:51]
Boyd GERBER
The following gets past the problems. Install SCO MP2 which has Berkeley DB-4.1.25, Download, download the lastest source from Sleepy Cat, but it in the bdb directory and modify the files to match the ones in the mysql-4.1.12 download. Do not use the version of dbdb that comes with the source download for mysql-4.1.12. As long as the latest libraries or the ones provided by SCO are used (Cannot use the ones in the tarbal.) you are able to use BDB tables. Using --without-berkeley-db or --with-berkeley-db=no then MySQL works. Something change from mysql-4.1.11 to mysql-4.1.12 that causes Berkeley DB to not work on UnixWare 7.1.X or Legend OpenServer 6.0.0. OpenServer 5.0.7 works with the version included, probably do to the Berkeley 4.1.25 libraries with MP 3.
[30 May 2005 20:54]
Boyd GERBER
I have now documented what needs to be done to work on UnixWare 7.1.4 and Legend OpenServer 6.0.0. You may decide how this should be listed. I think it would be good if other with the problem are able to find it.
[30 May 2005 21:16]
Boyd GERBER
The problem is the in bdb/build_unix there is no longer libdb.so of any kind only libdb.a So a regular build that uses dynamic libraries is not really done properly. There is only a libdb.a and that can not be used to build dynmatic. Only for static builds.
[31 May 2005 10:02]
Boyd GERBER
You can also do the following cd bdb/build_unix cp -p Makefile Makefile.sav CC=cc CXX=CC ../dist/configure gmake gmake install cp -p Makefile.sav Makefile cd ../.. Now Make the MySQL distribution and it works. The problem is with the way the configure has been changed.
[31 May 2005 10:03]
Boyd GERBER
Feed back has been given
[31 May 2005 11:45]
MySQL Verification Team
We shall ask our documentation department to document this report.
[31 May 2005 13:32]
Boyd GERBER
OK, It just seems strange that this is the first release of any MySQL that produces a core dump and failures instead of working. It really seems like someone changed something with Berkeley DB that causes this problem now. When all previous versions worked with this configure string from MySQL-3.22 to MySQL-4.1.11 and some MySQL-5.0.X. I have not tried the latest on it yet.
[14 Jul 2005 10:29]
Stefan Hinz
Thank you for your bug report. This issue has been addressed in the documentation. The updated documentation will appear on our website shortly, and will be included in the next release of the relevant product(s).