Commit graph

55378 commits

Author SHA1 Message Date
Mikael Ronstrom
4eaa41e296 A number of fixes to DTrace patch
Removed instance manager from builds
2008-12-20 15:16:46 +01:00
Mikael Ronstrom
0339019df6 Added support to make it possible to detect an Itanium process or SLES 10 2008-12-20 13:45:05 +01:00
Mikael Ronstrom
da743b3f65 Fixed missing declaration 2008-12-20 12:33:00 +01:00
Mikael Ronstrom
131768915b Merged DTrace patch into performance version 2008-12-20 12:07:32 +01:00
Mikael Ronstrom
2e4943912d Set new version number for performance version 2008-12-20 11:57:37 +01:00
Mikael Ronstrom
5e9d1e8109 Merge dtrace patch with latest performance version 2008-12-20 11:53:27 +01:00
Mikael Ronstrom
cc958a18dd Backport of DTrace patches from 6.0 2008-12-20 11:01:41 +01:00
Mikael Ronstrom
479bc835f8 Merge of Solaris/gcc fix 2008-12-19 13:00:55 +01:00
Mikael Ronstrom
657cdfd7bf Edited the help text to indicate changes to supported
platforms and emphasize the fact that gcc is the default
compiler on all platforms.

Make it possible to say --compiler=SunStudio instead of
--compiler=forte

Fix a bug that lost an important flag for C++ builds.
2008-12-19 12:34:02 +01:00
Mikael Ronstrom
481083d6ca Made it possible to set CC and CXX on commandline before calling script
for those cases when gcc, cc-5.0, icpc or icc isn't in the path.

Fixed handling of 32 and 64 bits.

Downgraded Solaris builds on Forte to use -xO2 rather than -xO3.

Made it possible to build 64-bits on Mac OS X

Fixed some bugs in setting CC, CXX, ASFLAGS, LDFLAGS

Fixed bugs relating to use of SunStudio/Forte in check-cpu

Reorganized code a bit

Removed the use of --with-fast-mutexes since they aren't really
fast, rather slow.

Added -static-libgcc when using gcc

Added optimising compilation flags on BSD

Added use of curses library on Solaris

Removed the use of MY_ATOMIC_MODE_RWLOCKS which removed use of
atomic instructions

Added support for Forte on Solaris/x86
2008-12-19 11:46:28 +01:00
Mikael Ronstrom
d359ea1ac2 Fix to make it compile on Solaris 2008-12-19 09:25:03 +01:00
Mattias Jonsson
55f1722ca4 Fix for mysql-5.1-performance-version, transaction information
removed from SHOW ENGINE InnoDB STATUS
2008-12-15 14:37:38 +01:00
Mikael Ronstrom
ac6e835572 Fixed bug 2008-12-15 11:19:47 +01:00
Mikael Ronstrom
eb07b0fab7 Fixed missing header 2008-12-15 10:46:02 +01:00
Mikael Ronstrom
5be1b7e44e Merge 2008-12-15 10:13:32 +01:00
Mikael Ronstrom
b4406d79fd Fix compiler error 2008-12-15 10:05:35 +01:00
Mikael Ronstrom
1e83020d89 Merged latest performance version 2008-12-15 09:55:07 +01:00
Mikael Ronstrom
568cc84dd5 Merge latest 5.1 into performance version 2008-12-15 09:47:39 +01:00
Mikael Ronstrom
8338bff34b Fixed compiler warnings on various platforms 2008-12-15 09:44:00 +01:00
Mikael Ronstrom
3e4480f55e Yet another idef error 2008-12-12 23:44:39 +01:00
Mikael Ronstrom
f7cbdfa241 Fix of ifdef error 2008-12-12 22:39:12 +01:00
Mikael Ronstrom
5d615366ea Introduced a new timer based innodb thread concurrency. A new
parameter innodb_thread_concurrency_timer_based is used to
get this new feature (it is set by default). The new feature
is only available on platforms where atomic instructions are
available.
2008-12-12 21:17:15 +01:00
Mikael Ronstrom
aefc0acaf2 Minor modifications to spin values which showed to be slightly better. 2008-12-10 18:54:23 +01:00
Mikael Ronstrom
14a4a7b5a7 Added a PAUSE instruction to the SPIN loop
according to recommendation from Intel.
2008-12-10 14:02:52 +01:00
Georgi Kodinov
ba816c14a9 merged 5.0-main -> 5.1-main 2008-12-08 11:39:34 +02:00
Mikael Ronstrom
90f70ebd22 Added large page support for Solaris
Change defaults, now large page support is default if supported
Introduced super-large-pages support for Solaris to use 256 MByte
page size rather than 4 MByte.
2008-12-05 19:43:45 +01:00
Mikael Ronstrom
9d854d55a8 Ensure background wake-up thread doesn't cause deadlocks 2008-12-05 14:08:28 +01:00
Mikael Ronstrom
e9bdc258d9 Added memory barriers to the portability layer in InnoDB
Removed dependency on pthread being an int
2008-12-05 13:43:10 +01:00
Georgi Kodinov
1bb6a0ba9f Disable wait_timeout_func and report bug #41255. 2008-12-05 13:24:19 +02:00
Vladislav Vaintroub
8f500c522b Bug#38522: 5 seconds delay when closing application using embedded server
The problem here is that embedded server starts handle_thread manager 
thread  on mysql_library_init() does not stop it on mysql_library_end().
At shutdown, my_thread_global_end() waits for thread count to become 0,
but since we did not stop the thread it will give up after 5 seconds.
             
Solution is to move shutdown for handle_manager thread from kill_server()
(mysqld specific) to clean_up() that is used by both embedded and mysqld.
            
This patch also contains some refactorings - to avoid duplicate code,
start_handle_manager() and stop_handle_manager() functions are introduced.
Unused variables are eliminated. handle_manager does not rely on global
variable abort_loop anymore to stop (abort_loop is not set for embedded).
            
Note: Specifically on Windows and when using DBUG version of libmysqld, 
the complete solution requires removing obsolete code my_thread_init() 
from my_thread_var(). This has a side effect that a DBUG statement 
after my_thread_end() can cause thread counter to be incremented, and 
embedded will hang for some seconds. Or worse, my_thread_init() will 
crash if critical sections have been deleted by the global cleanup 
routine that runs in a different thread. 

This patch also fixes and revert prior changes for Bug#38293 
"Libmysqld crash in mysql_library_init if language file missing".

Root cause of the crash observed in Bug#38293  was bug in my_thread_init() 
described above




client/mysql.cc:
  sql_protocol_typelib is not exported from libmysqld
  (does not make sense either)
  thus excluded from embedded client
dbug/dbug.c:
  revert changes for Bug#38293
include/my_dbug.h:
  revert changes for Bug#38293
libmysql/libmysql.c:
  Removed DBUG_POP call, because when called after my_end(), will access
  THR_key_mysys that is already deleted. The result of pthread_get_specific
  is not predictable in this case and hence DBUG_POP can crash.
libmysqld/examples/CMakeLists.txt:
  Revert changes for Bug#38293.
libmysqld/lib_sql.cc:
  code to start handle manager is factored out into 
  start_handle_manager() function
libmysqld/libmysqld.def:
  Revert changes for Bug #38293
  Remove excessive exports from libmysqld, export what API documents.
mysys/my_thr_init.c:
  Remove windows-DLL-specific workaround for something (old code, no documentation for
  what specifically). The problem is that even after my_thread_end() is finished, 
  DBUG statement can initiate my_thread_init(). This does not happen anywhere else and 
  should not happen on  Windows either.
sql/mysql_priv.h:
  - new functions start_handle_manager() and stop_handle_manager()
  - move manager_thread_in_use  variable to sql_manager.cc and made
  it static
  - remove manager_status, as it is unused
sql/mysqld.cc:
  Code to start/stop handle_manager thread is factored out into start_handle_manager()
2008-12-04 19:41:53 +01:00
Mikael Ronstrom
7ceb6050ee call ha_release_temporary_latches to fix bug 32149 2008-12-04 16:03:02 +01:00
Mikael Ronstrom
7661629cf7 Fix to avoid compilation errors on Windows
Not the final fix, only a temporary fix
2008-12-04 11:57:56 +01:00
unknown
7391280c15 Raise version number after cloning 5.0.74 2008-12-03 01:09:05 +01:00
Georgi Kodinov
71dbb4987f moved the version to 5.0-main 2008-12-02 14:50:40 +02:00
Georgi Kodinov
014143e858 Fixed a bad merge (5.0->5.1) of the fix for bug 37339.
There was a missing initialization.

sql/set_var.h:
  Added an initialization missing during the merge of 37339.
2008-12-02 13:21:05 +02:00
Georgi Kodinov
bd53e304d7 Addendum to the fix for bug #39178: Server crash in YaSSL
with non-RSA-requesting client if server uses RSA key

matchSuite() may not find a match. 
It will return error in this case.
Added a error checking code that will prevent using uninitialized 
memory in the code based on the assumption 
that matchSuite() has found a match.

extra/yassl/src/yassl_imp.cpp:
  Bug #39178: Correct error checking added
2008-12-02 13:15:28 +02:00
Georgi Kodinov
47cff6998a merged addendum to bug 39920 to 5.1-bugteam 2008-12-01 17:43:51 +02:00
Georgi Kodinov
7f9e0b9bfb addendum to the fix for bug #39920 : post-merge test suite fixes 2008-12-01 17:41:06 +02:00
Georgi Kodinov
6afd8123a3 merged bug 39920 and 5.1-main to 5.1-bugteam 2008-12-01 17:22:16 +02:00
Georgi Kodinov
9a2d729bb3 merged 5.1-main -> 5.1-bugteam 2008-12-01 17:05:23 +02:00
Georgi Kodinov
c419185fed merged 5.0-main into 5.0-bugteam 2008-12-01 16:56:56 +02:00
Georgi Kodinov
7114fde7c0 merged bug 39920 to 5.0-bugteam 2008-12-01 16:41:22 +02:00
Georgi Kodinov
f56e43ce52 Bug #39920: MySQL cannot deal with Leap Second expression in string literal.
Updated MySQL time handling code to react correctly on UTC leap second additions.
MySQL functions that return the OS current time, like e.g. CURDATE(), NOW() etc
will return :59:59 instead of :59:60 or 59:61.
As a result the reader will receive :59:59 for 2 or 3 consecutive seconds 
during the leap second.
This fix will not affect the values returned by UNIX_TIMESTAMP() for leap seconds.
But note that when converting the value returned by UNIX_TIMESTAMP() to broken 
down time the correction of leap seconds will still be applied.
Note that this fix will make a difference *only* if the OS is specially configured
to return leap seconds from the OS time calls or when using a MySQL time zone 
defintion that has leap seconds.
Even after this change date/time literals (or other broken down time 
representations) with leap seconds (ending on :59:60 or 59:61) will still be 
considered illegal and discarded by the server with an error or 
a warning depending on the sql mode.
Added a test case to demonstrate the effect of the fix.

mysql-test/r/timezone3.result:
  Bug #39920: test case
mysql-test/std_data/Moscow_leap:
  Bug #39920: updated the Moscow time zone to Dr. Olson's tzdata 2008i 
  to accomodate for the 2008 leap second
mysql-test/t/timezone3.test:
  Bug #39920: test case
sql/tztime.cc:
  Bug #39920: adjust leap seconds (:60 or :61) to :59
sql/tztime.h:
  Bug #39920: adjust leap seconds (:60 or :61) to :59
2008-12-01 16:18:35 +02:00
Georgi Kodinov
5f109f4882 merge of the addenum for bug 37339 to 5.1-bugteam 2008-12-01 15:15:33 +02:00
Georgi Kodinov
a1e9b6ba1e Addendum to bug #37339 : make the test case portable to windows
by using and taking out a full path.

mysql-test/r/ctype_filesystem.result:
  Bug #37399: use MYSQL_TEST_DIR rooted test
mysql-test/t/ctype_filesystem-master.opt:
  Bug #37399: use MYSQL_TEST_DIR rooted test
mysql-test/t/ctype_filesystem.test:
  Bug #37399: use MYSQL_TEST_DIR rooted test
2008-12-01 13:34:53 +02:00
Gleb Shchepa
2149e3b948 null-merge 5.0-bugteam --> 5.1-bugteam (bug 33461) 2008-12-01 12:16:11 +04:00
Gleb Shchepa
4f75f58b7a After-push commit for bug #33461 to make valgrind happy:
TABLE_LIST doesn't free Strings in its string lists
(TABLE_LIST::use_index and TABLE_liST::ignore_index), so
calling c_ptr_safe() on that Strings leads to memleaks.
OTOH "safe" c_ptr_safe() is not necessary there and we can
replace it with c_ptr().
2008-12-01 12:14:02 +04:00
Ingo Struewing
622db26040 auto-merge 2008-11-28 21:55:52 +01:00
Matthias Leich
ec33acf6ae Null merge, everything is already in place 2008-11-28 20:00:23 +01:00
Matthias Leich
58288b6939 Merge of last pushes into GCA tree, no conflicts
Diff to actual 5.0-bugteam is revno: 2725 only
2008-11-28 19:47:08 +01:00