Loading Docs/glibc-2.2.5.patch +136 −73 Original line number Diff line number Diff line diff -Nur --exclude=SCCS --exclude=BitKeeper --exclude=ChangeSet ../glibc-2.2.5/linuxthreads/internals.h ./linuxthreads/internals.h --- ../glibc-2.2.5/linuxthreads/internals.h Thu Nov 29 00:44:16 2001 +++ ./linuxthreads/internals.h Fri Feb 22 21:18:09 2002 @@ -343,7 +343,7 @@ diff -r -c --exclude=*.info* glibc-2.2.4/linuxthreads/internals.h glibc-2.2.4-new/linuxthreads/internals.h *** glibc-2.2.4/linuxthreads/internals.h Mon Jul 23 20:54:13 2001 --- glibc-2.2.4-new/linuxthreads/internals.h Tue Apr 16 15:08:03 2002 *************** *** 339,345 **** THREAD_SELF implementation is used, this must be a power of two and a multiple of PAGE_SIZE. */ #ifndef STACK_SIZE -#define STACK_SIZE (2 * 1024 * 1024) +#define STACK_SIZE (128 * 1024) ! #define STACK_SIZE (2 * 1024 * 1024) #endif /* The initial size of the thread stack. Must be a multiple of PAGE_SIZE. */ diff -Nur --exclude=SCCS --exclude=BitKeeper --exclude=ChangeSet ../glibc-2.2.5/linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h ./linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h --- ../glibc-2.2.5/linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h Thu Jun 8 13:49:49 2000 +++ ./linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h Fri Feb 22 21:18:09 2002 @@ -64,7 +64,7 @@ --- 339,345 ---- THREAD_SELF implementation is used, this must be a power of two and a multiple of PAGE_SIZE. */ #ifndef STACK_SIZE ! #define STACK_SIZE (128 * 1024) #endif /* The initial size of the thread stack. Must be a multiple of PAGE_SIZE. */ diff -r -c --exclude=*.info* glibc-2.2.4/linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h glibc-2.2.4-new/linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h *** glibc-2.2.4/linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h Fri Jun 9 22:17:35 2000 --- glibc-2.2.4-new/linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h Tue Apr 16 15:10:38 2002 *************** *** 64,70 **** /* The number of threads per process. */ #define _POSIX_THREAD_THREADS_MAX 64 /* This is the value this implementation supports. */ -#define PTHREAD_THREADS_MAX 1024 +#define PTHREAD_THREADS_MAX 4096 ! #define PTHREAD_THREADS_MAX 1024 /* Maximum amount by which a process can descrease its asynchronous I/O priority level. */ diff -Nur --exclude=SCCS --exclude=BitKeeper --exclude=ChangeSet ../glibc-2.2.5/nss/nsswitch.c ./nss/nsswitch.c --- ../glibc-2.2.5/nss/nsswitch.c Tue Jul 17 02:21:36 2001 +++ ./nss/nsswitch.c Fri Feb 22 21:18:09 2002 @@ -515,8 +515,16 @@ + (line - name + 1)); --- 64,70 ---- /* The number of threads per process. */ #define _POSIX_THREAD_THREADS_MAX 64 /* This is the value this implementation supports. */ ! #define PTHREAD_THREADS_MAX 4096 /* Maximum amount by which a process can descrease its asynchronous I/O priority level. */ diff -r -c --exclude=*.info* glibc-2.2.4/nss/nsswitch.c glibc-2.2.4-new/nss/nsswitch.c *** glibc-2.2.4/nss/nsswitch.c Mon Jul 23 20:54:48 2001 --- glibc-2.2.4-new/nss/nsswitch.c Fri May 3 04:17:44 2002 *************** *** 496,501 **** --- 496,502 ---- { service_user *new_service; const char *name; + int name_alloc_len; while (isspace (line[0])) ++line; *************** *** 510,522 **** if (name == line) return result; new_service = (service_user *) malloc (sizeof (service_user) ! + (line - name + 1)); if (new_service == NULL) return result; - +#ifdef DO_STATIC_NSS + if (strncmp(name,"files",5) == 0 || + strncmp(name,"dns",3) == 0) +#endif *((char *) __mempcpy (new_service->name, name, line - name)) = '\0'; ! *((char *) __mempcpy (new_service->name, name, line - name)) = '\0'; /* Set default actions. */ new_service->actions[2 + NSS_STATUS_TRYAGAIN] = NSS_ACTION_CONTINUE; --- 511,533 ---- if (name == line) return result; + name_alloc_len = line - name + 1; + + #ifdef DO_STATIC_NSS + else + *((char *) __mempcpy (new_service->name, "files", 5)) = '\0'; + if (!((name_alloc_len == 6 && strncmp(name,"files",5) == 0) || + (name_alloc_len == 4 && strncmp(name,"dns",3) == 0))) + { + name = (char*) "files"; + name_alloc_len=6; + } + #endif + new_service = (service_user *) malloc (sizeof (service_user) ! + name_alloc_len); if (new_service == NULL) return result; ! *((char *) __mempcpy (new_service->name, name, name_alloc_len)) = '\0'; /* Set default actions. */ new_service->actions[2 + NSS_STATUS_TRYAGAIN] = NSS_ACTION_CONTINUE; diff -Nur --exclude=SCCS --exclude=BitKeeper --exclude=ChangeSet ../glibc-2.2.5/time/Makefile ./time/Makefile --- ../glibc-2.2.5/time/Makefile Fri Feb 22 21:27:19 2002 +++ ./time/Makefile Fri Feb 22 21:26:47 2002 @@ -37,8 +37,8 @@ diff -r -c --exclude=*.info* glibc-2.2.4/time/Makefile glibc-2.2.4-new/time/Makefile *** glibc-2.2.4/time/Makefile Fri Aug 10 22:12:07 2001 --- glibc-2.2.4-new/time/Makefile Tue Apr 16 15:11:09 2002 *************** *** 37,44 **** include ../Rules -tz-cflags = -DTZDIR='"$(zonedir)"' \ - -DTZDEFAULT='"$(localtime-file)"' \ +tz-cflags = -DTZDIR='"/usr/share/zoneinfo/"' \ + -DTZDEFAULT='"/etc/localtime"' \ ! tz-cflags = -DTZDIR='"$(zonedir)"' \ ! -DTZDEFAULT='"$(localtime-file)"' \ -DTZDEFRULES='"$(posixrules-file)"' CFLAGS-tzfile.c = $(tz-cflags) diff -Nur --exclude=SCCS --exclude=BitKeeper --exclude=ChangeSet ../glibc-2.2.5/timezone/Makefile ./timezone/Makefile --- ../glibc-2.2.5/timezone/Makefile Wed Aug 29 16:45:25 2001 +++ ./timezone/Makefile Fri Feb 22 21:18:09 2002 @@ -159,8 +159,8 @@ --- 37,44 ---- include ../Rules ! tz-cflags = -DTZDIR='"/usr/share/zoneinfo/"' \ ! -DTZDEFAULT='"/etc/localtime"' \ -DTZDEFRULES='"$(posixrules-file)"' CFLAGS-tzfile.c = $(tz-cflags) diff -r -c --exclude=*.info* glibc-2.2.4/timezone/Makefile glibc-2.2.4-new/timezone/Makefile *** glibc-2.2.4/timezone/Makefile Mon Jul 23 20:58:05 2001 --- glibc-2.2.4-new/timezone/Makefile Tue Apr 16 15:11:09 2002 *************** *** 159,166 **** $(objpfx)zic: $(objpfx)scheck.o $(objpfx)ialloc.o ! tz-cflags = -DTZDIR='"$(zonedir)"' \ ! -DTZDEFAULT='"$(localtime-file)"' \ -DTZDEFRULES='"$(posixrules-file)"' \ -DTM_GMTOFF=tm_gmtoff -DTM_ZONE=tm_zone --- 159,166 ---- $(objpfx)zic: $(objpfx)scheck.o $(objpfx)ialloc.o -tz-cflags = -DTZDIR='"$(zonedir)"' \ - -DTZDEFAULT='"$(localtime-file)"' \ +tz-cflags = -DTZDIR='"/usr/share/zoneinfo/"' \ + -DTZDEFAULT='"/etc/localtime"' \ ! tz-cflags = -DTZDIR='"/usr/share/zoneinfo/"' \ ! -DTZDEFAULT='"/etc/localtime"' \ -DTZDEFRULES='"$(posixrules-file)"' \ -DTM_GMTOFF=tm_gmtoff -DTM_ZONE=tm_zone Docs/manual.texi +2 −0 Original line number Diff line number Diff line Loading @@ -46916,6 +46916,8 @@ not yet 100% confident in this code. @appendixsubsec Changes in release 3.23.51 @itemize @bullet @item Fixed bug in @code{CONCAT_WS()} that cut the result. @item Changed name of variables @code{Com_show_master_stat} to @code{Com_show_master_status} and @code{Com_show_slave_stat} to @code{Com_show_slave_status}. mysql-test/r/func_concat.result 0 → 100644 +13 −0 Original line number Diff line number Diff line number alpha new 1413006 idlfmv 1413006<---->idlfmv 1413065 smpsfz 1413065<---->smpsfz 1413127 sljrhx 1413127<---->sljrhx 1413304 qerfnd 1413304<---->qerfnd new 1413006<---->idlfmv number alpha new 1413006 idlfmv 1413006<->idlfmv number alpha new 1413006 idlfmv 1413006-idlfmv-idlfmv-idlfmv-idlfmv-idlfmv-idlfmv-idlfmv number alpha new 1413006 idlfmv 1413006<------------------>idlfmv mysql-test/t/func_concat.test 0 → 100644 +24 −0 Original line number Diff line number Diff line # # Test of problem with CONCAT_WS() and long separators. # DROP TABLE IF EXISTS t1; CREATE TABLE t1 ( number INT NOT NULL, alpha CHAR(6) NOT NULL ); INSERT INTO t1 VALUES (1413006,'idlfmv'), (1413065,'smpsfz'),(1413127,'sljrhx'),(1413304,'qerfnd'); SELECT number, alpha, CONCAT_WS('<---->',number,alpha) AS new FROM t1 GROUP BY number; SELECT CONCAT_WS('<---->',number,alpha) AS new FROM t1 GROUP BY new LIMIT 1; SELECT number, alpha, CONCAT_WS('<->',number,alpha) AS new FROM t1 GROUP BY new LIMIT 1; SELECT number, alpha, CONCAT_WS('-',number,alpha,alpha,alpha,alpha,alpha,alpha,alpha) AS new FROM t1 GROUP BY new LIMIT 1; SELECT number, alpha, CONCAT_WS('<------------------>',number,alpha) AS new FROM t1 GROUP BY new LIMIT 1; drop table t1; sql/item_strfunc.cc +1 −1 Original line number Diff line number Diff line Loading @@ -313,7 +313,7 @@ String *Item_func_concat_ws::val_str(String *str) void Item_func_concat_ws::fix_length_and_dec() { max_length=0; max_length=separator->max_length*(arg_count-1); for (uint i=0 ; i < arg_count ; i++) max_length+=args[i]->max_length; if (max_length > MAX_BLOB_WIDTH) Loading Loading
Docs/glibc-2.2.5.patch +136 −73 Original line number Diff line number Diff line diff -Nur --exclude=SCCS --exclude=BitKeeper --exclude=ChangeSet ../glibc-2.2.5/linuxthreads/internals.h ./linuxthreads/internals.h --- ../glibc-2.2.5/linuxthreads/internals.h Thu Nov 29 00:44:16 2001 +++ ./linuxthreads/internals.h Fri Feb 22 21:18:09 2002 @@ -343,7 +343,7 @@ diff -r -c --exclude=*.info* glibc-2.2.4/linuxthreads/internals.h glibc-2.2.4-new/linuxthreads/internals.h *** glibc-2.2.4/linuxthreads/internals.h Mon Jul 23 20:54:13 2001 --- glibc-2.2.4-new/linuxthreads/internals.h Tue Apr 16 15:08:03 2002 *************** *** 339,345 **** THREAD_SELF implementation is used, this must be a power of two and a multiple of PAGE_SIZE. */ #ifndef STACK_SIZE -#define STACK_SIZE (2 * 1024 * 1024) +#define STACK_SIZE (128 * 1024) ! #define STACK_SIZE (2 * 1024 * 1024) #endif /* The initial size of the thread stack. Must be a multiple of PAGE_SIZE. */ diff -Nur --exclude=SCCS --exclude=BitKeeper --exclude=ChangeSet ../glibc-2.2.5/linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h ./linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h --- ../glibc-2.2.5/linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h Thu Jun 8 13:49:49 2000 +++ ./linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h Fri Feb 22 21:18:09 2002 @@ -64,7 +64,7 @@ --- 339,345 ---- THREAD_SELF implementation is used, this must be a power of two and a multiple of PAGE_SIZE. */ #ifndef STACK_SIZE ! #define STACK_SIZE (128 * 1024) #endif /* The initial size of the thread stack. Must be a multiple of PAGE_SIZE. */ diff -r -c --exclude=*.info* glibc-2.2.4/linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h glibc-2.2.4-new/linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h *** glibc-2.2.4/linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h Fri Jun 9 22:17:35 2000 --- glibc-2.2.4-new/linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h Tue Apr 16 15:10:38 2002 *************** *** 64,70 **** /* The number of threads per process. */ #define _POSIX_THREAD_THREADS_MAX 64 /* This is the value this implementation supports. */ -#define PTHREAD_THREADS_MAX 1024 +#define PTHREAD_THREADS_MAX 4096 ! #define PTHREAD_THREADS_MAX 1024 /* Maximum amount by which a process can descrease its asynchronous I/O priority level. */ diff -Nur --exclude=SCCS --exclude=BitKeeper --exclude=ChangeSet ../glibc-2.2.5/nss/nsswitch.c ./nss/nsswitch.c --- ../glibc-2.2.5/nss/nsswitch.c Tue Jul 17 02:21:36 2001 +++ ./nss/nsswitch.c Fri Feb 22 21:18:09 2002 @@ -515,8 +515,16 @@ + (line - name + 1)); --- 64,70 ---- /* The number of threads per process. */ #define _POSIX_THREAD_THREADS_MAX 64 /* This is the value this implementation supports. */ ! #define PTHREAD_THREADS_MAX 4096 /* Maximum amount by which a process can descrease its asynchronous I/O priority level. */ diff -r -c --exclude=*.info* glibc-2.2.4/nss/nsswitch.c glibc-2.2.4-new/nss/nsswitch.c *** glibc-2.2.4/nss/nsswitch.c Mon Jul 23 20:54:48 2001 --- glibc-2.2.4-new/nss/nsswitch.c Fri May 3 04:17:44 2002 *************** *** 496,501 **** --- 496,502 ---- { service_user *new_service; const char *name; + int name_alloc_len; while (isspace (line[0])) ++line; *************** *** 510,522 **** if (name == line) return result; new_service = (service_user *) malloc (sizeof (service_user) ! + (line - name + 1)); if (new_service == NULL) return result; - +#ifdef DO_STATIC_NSS + if (strncmp(name,"files",5) == 0 || + strncmp(name,"dns",3) == 0) +#endif *((char *) __mempcpy (new_service->name, name, line - name)) = '\0'; ! *((char *) __mempcpy (new_service->name, name, line - name)) = '\0'; /* Set default actions. */ new_service->actions[2 + NSS_STATUS_TRYAGAIN] = NSS_ACTION_CONTINUE; --- 511,533 ---- if (name == line) return result; + name_alloc_len = line - name + 1; + + #ifdef DO_STATIC_NSS + else + *((char *) __mempcpy (new_service->name, "files", 5)) = '\0'; + if (!((name_alloc_len == 6 && strncmp(name,"files",5) == 0) || + (name_alloc_len == 4 && strncmp(name,"dns",3) == 0))) + { + name = (char*) "files"; + name_alloc_len=6; + } + #endif + new_service = (service_user *) malloc (sizeof (service_user) ! + name_alloc_len); if (new_service == NULL) return result; ! *((char *) __mempcpy (new_service->name, name, name_alloc_len)) = '\0'; /* Set default actions. */ new_service->actions[2 + NSS_STATUS_TRYAGAIN] = NSS_ACTION_CONTINUE; diff -Nur --exclude=SCCS --exclude=BitKeeper --exclude=ChangeSet ../glibc-2.2.5/time/Makefile ./time/Makefile --- ../glibc-2.2.5/time/Makefile Fri Feb 22 21:27:19 2002 +++ ./time/Makefile Fri Feb 22 21:26:47 2002 @@ -37,8 +37,8 @@ diff -r -c --exclude=*.info* glibc-2.2.4/time/Makefile glibc-2.2.4-new/time/Makefile *** glibc-2.2.4/time/Makefile Fri Aug 10 22:12:07 2001 --- glibc-2.2.4-new/time/Makefile Tue Apr 16 15:11:09 2002 *************** *** 37,44 **** include ../Rules -tz-cflags = -DTZDIR='"$(zonedir)"' \ - -DTZDEFAULT='"$(localtime-file)"' \ +tz-cflags = -DTZDIR='"/usr/share/zoneinfo/"' \ + -DTZDEFAULT='"/etc/localtime"' \ ! tz-cflags = -DTZDIR='"$(zonedir)"' \ ! -DTZDEFAULT='"$(localtime-file)"' \ -DTZDEFRULES='"$(posixrules-file)"' CFLAGS-tzfile.c = $(tz-cflags) diff -Nur --exclude=SCCS --exclude=BitKeeper --exclude=ChangeSet ../glibc-2.2.5/timezone/Makefile ./timezone/Makefile --- ../glibc-2.2.5/timezone/Makefile Wed Aug 29 16:45:25 2001 +++ ./timezone/Makefile Fri Feb 22 21:18:09 2002 @@ -159,8 +159,8 @@ --- 37,44 ---- include ../Rules ! tz-cflags = -DTZDIR='"/usr/share/zoneinfo/"' \ ! -DTZDEFAULT='"/etc/localtime"' \ -DTZDEFRULES='"$(posixrules-file)"' CFLAGS-tzfile.c = $(tz-cflags) diff -r -c --exclude=*.info* glibc-2.2.4/timezone/Makefile glibc-2.2.4-new/timezone/Makefile *** glibc-2.2.4/timezone/Makefile Mon Jul 23 20:58:05 2001 --- glibc-2.2.4-new/timezone/Makefile Tue Apr 16 15:11:09 2002 *************** *** 159,166 **** $(objpfx)zic: $(objpfx)scheck.o $(objpfx)ialloc.o ! tz-cflags = -DTZDIR='"$(zonedir)"' \ ! -DTZDEFAULT='"$(localtime-file)"' \ -DTZDEFRULES='"$(posixrules-file)"' \ -DTM_GMTOFF=tm_gmtoff -DTM_ZONE=tm_zone --- 159,166 ---- $(objpfx)zic: $(objpfx)scheck.o $(objpfx)ialloc.o -tz-cflags = -DTZDIR='"$(zonedir)"' \ - -DTZDEFAULT='"$(localtime-file)"' \ +tz-cflags = -DTZDIR='"/usr/share/zoneinfo/"' \ + -DTZDEFAULT='"/etc/localtime"' \ ! tz-cflags = -DTZDIR='"/usr/share/zoneinfo/"' \ ! -DTZDEFAULT='"/etc/localtime"' \ -DTZDEFRULES='"$(posixrules-file)"' \ -DTM_GMTOFF=tm_gmtoff -DTM_ZONE=tm_zone
Docs/manual.texi +2 −0 Original line number Diff line number Diff line Loading @@ -46916,6 +46916,8 @@ not yet 100% confident in this code. @appendixsubsec Changes in release 3.23.51 @itemize @bullet @item Fixed bug in @code{CONCAT_WS()} that cut the result. @item Changed name of variables @code{Com_show_master_stat} to @code{Com_show_master_status} and @code{Com_show_slave_stat} to @code{Com_show_slave_status}.
mysql-test/r/func_concat.result 0 → 100644 +13 −0 Original line number Diff line number Diff line number alpha new 1413006 idlfmv 1413006<---->idlfmv 1413065 smpsfz 1413065<---->smpsfz 1413127 sljrhx 1413127<---->sljrhx 1413304 qerfnd 1413304<---->qerfnd new 1413006<---->idlfmv number alpha new 1413006 idlfmv 1413006<->idlfmv number alpha new 1413006 idlfmv 1413006-idlfmv-idlfmv-idlfmv-idlfmv-idlfmv-idlfmv-idlfmv number alpha new 1413006 idlfmv 1413006<------------------>idlfmv
mysql-test/t/func_concat.test 0 → 100644 +24 −0 Original line number Diff line number Diff line # # Test of problem with CONCAT_WS() and long separators. # DROP TABLE IF EXISTS t1; CREATE TABLE t1 ( number INT NOT NULL, alpha CHAR(6) NOT NULL ); INSERT INTO t1 VALUES (1413006,'idlfmv'), (1413065,'smpsfz'),(1413127,'sljrhx'),(1413304,'qerfnd'); SELECT number, alpha, CONCAT_WS('<---->',number,alpha) AS new FROM t1 GROUP BY number; SELECT CONCAT_WS('<---->',number,alpha) AS new FROM t1 GROUP BY new LIMIT 1; SELECT number, alpha, CONCAT_WS('<->',number,alpha) AS new FROM t1 GROUP BY new LIMIT 1; SELECT number, alpha, CONCAT_WS('-',number,alpha,alpha,alpha,alpha,alpha,alpha,alpha) AS new FROM t1 GROUP BY new LIMIT 1; SELECT number, alpha, CONCAT_WS('<------------------>',number,alpha) AS new FROM t1 GROUP BY new LIMIT 1; drop table t1;
sql/item_strfunc.cc +1 −1 Original line number Diff line number Diff line Loading @@ -313,7 +313,7 @@ String *Item_func_concat_ws::val_str(String *str) void Item_func_concat_ws::fix_length_and_dec() { max_length=0; max_length=separator->max_length*(arg_count-1); for (uint i=0 ; i < arg_count ; i++) max_length+=args[i]->max_length; if (max_length > MAX_BLOB_WIDTH) Loading