Commit graph

67132 commits

Author SHA1 Message Date
Vladislav Vaintroub
a1fe23668f Fix compile error on Windows after WL#1054 push.
The error was introduced by typo in variable name (errormsg instead of correct
errmsg)

- Also, precache  HAVE_PEERCRED to OFF in cmake\os\WindowsCache.cmake
(to avoid useless system check).
- Also, add missing check for errors from FormatMessage().

- Also, remove annoying CMake debug printout of MALLOC_LIB if this is not set.
2010-10-04 21:25:53 +02:00
Georgi Kodinov
57bb4dee2e merge 2010-10-04 18:26:34 +03:00
Joerg Bruehe
20fa3d7d38 Merge 56267 into 5.5-bugteam. 2010-10-04 17:08:35 +02:00
Georgi Kodinov
f206172ba9 worklog 1054: Fixed test suite typos 2010-10-04 16:09:37 +03:00
Georgi Kodinov
c050a4524f Bug #56767: Make sure client plugins in 1054 are compatible with
connectors plugins
      
Implemented changes needed to keep the client plugin API compatible with 
the existing plugins :
      
1. Provided an options() client plugin API to let the application pass
options to the plugin after loading it
2. Added "License" (const char *) to specify the client plugin's license
3. Added "mysql_api" as a placeholder that the client library can use
to pass function pointers to the plugin so that the plugin can call the 
C lib back.
4. Updated the existing client plugins to comply with the API change.
5. Added more detailed error message generation for Windows.
2010-10-04 15:54:41 +03:00
Georgi Kodinov
8789c79723 merge 2010-10-04 15:42:16 +03:00
Davi Arnaut
40ee088f68 Bug#57210: remove pstack
Quoting from the bug report:

The pstack library has been included in MySQL since version
4.0.0. It's useless and should be removed.

Details: According to its own documentation, pstack only works
on Linux on x86 in 32 bit mode and requires LinuxThreads and a
statically linked binary. It doesn't really support any Linux
from 2003 or later and doesn't work on any other OS.
2010-10-04 08:52:59 -03:00
Vasil Dimov
a39f21a97e Merge mysql-5.5-innodb -> mysql-5.5-bugteam 2010-10-04 14:58:52 +03:00
Vasil Dimov
654b3e60c8 Merge mysql-5.5-bugteam -> mysql-5.5-innodb 2010-10-04 14:53:20 +03:00
Vasil Dimov
f3f1db2a45 Merge mysql-5.5-innodb from bk-internal to my local tree 2010-10-04 13:46:41 +03:00
Vasil Dimov
1852090266 Merge mysql-5.5-innodb from bk-internal to my local tree 2010-10-04 13:46:41 +03:00
Vasil Dimov
97bce13658 Merge mysql-5.5-bugteam -> mysql-5.5-innodb 2010-10-04 13:39:38 +03:00
Marko Mäkelä
24b1a89712 Merge Bug#56716 from 5.1 2010-10-04 13:38:05 +03:00
Vladislav Vaintroub
f6e5cf3ef4 merge 2010-10-04 13:41:10 +02:00
Vladislav Vaintroub
c38aa1b0e2 merge2 2010-10-04 13:36:37 +02:00
Vasil Dimov
2af35a2c0b Merge mysql-5.1-bugteam -> mysql-5.5-bugteam
(null merge of innodb-only changes)
2010-10-04 14:31:40 +03:00
Vasil Dimov
d9f88e64f1 Merge mysql-5.1-innodb -> mysql-5.1-bugteam 2010-10-04 14:26:56 +03:00
Vladislav Vaintroub
367bfa4106 A follow-up to the patch for bug #56405 "Deadlock in the MDL deadlock
detector". This patch addresses performance regression in OLTP_RO/MyISAM
test on Windows introduced by the fix for bug #56405. Thus it makes
original patch acceptable as a solution for bug #56585 "Slowdown of
readonly sysbench benchmarks (e.g point_select) on Windows 5.5".

With this patch, MySQL will use native Windows condition variables and 
reader-writer locks  if  they are supported by the OS.

This speeds up MyISAM and the effect comes mostly from using native
rwlocks. Native conditions improve scalability with higher number of 
concurrent users in other situations, e.g for prlocks.

Benchmark numbers for this patch as measured on Win2008R2 quad
core machine are attached to the bug report.
( direct link http://bugs.mysql.com/file.php?id=15883 )

Note that currently we require at least Windows7/WS2008R2 for 
reader-writer locks, even though native rwlock is available also on Vista.
Reason is that "trylock" APIs are missing on Vista, and trylock is used in
the server (in a single place in query cache).

While this patch could have been written differently, to enable the native
rwlock optimization also on Vista/WS2008 (e.g using native locks everywhere
but portable implementation in query cache), this would come at the 
expense of the code clarity, as it would introduce a new  "try-able" rwlock
type, to handle Vista case.

Another way to improve performance for the special case 
(OLTP_RO/MYISAM/Vista) would be to eliminate "trylock" usage from server,
 but this is outside of the scope here.


Native conditions variables are used beginning with Vista though the effect
of using condition variables alone is not measurable in this benchmark.
But when used together with native rwlocks on Win7, native conditions improve 
performance in high-concurrency OLTP_RO/MyISAM (128 and more sysbench 
users).
2010-10-04 13:03:11 +02:00
Marko Mäkelä
80961a0a25 Merge Bug#56716 from 5.1 2010-10-04 13:38:05 +03:00
Bjorn Munch
9ee0d56896 null upmerge 2010-10-04 12:08:36 +02:00
Marko Mäkelä
190ebda206 Bug#56716 InnoDB locks a record gap without locking the table
row_search_for_mysql(): Acquire an intention lock on the table
before locking the first record gap.
2010-10-04 13:06:41 +03:00
Marko Mäkelä
678bc90ed8 Bug#56716 InnoDB locks a record gap without locking the table
row_search_for_mysql(): Acquire an intention lock on the table
before locking the first record gap.
2010-10-04 13:05:21 +03:00
Bjorn Munch
0548d66df4 Follow-up to 54861, cannot assume pthread_t is integral type 2010-10-04 12:01:16 +02:00
Vasil Dimov
282eee8879 Merge mysql-5.1-bugteam -> mysql-5.1-innodb 2010-10-04 12:49:58 +03:00
Bjorn Munch
cd18aa3126 merge from 5.5-mtr 2010-10-04 10:40:28 +02:00
Bjorn Munch
c443ee4333 Small test fix after 56753 2010-10-03 19:39:28 +02:00
Bjorn Munch
64e189c37c merge from 5.1-mtr 2010-10-03 19:37:58 +02:00
Joerg Bruehe
bf18e8529a Fix bug#56267:
tcmalloc lib (libtcmalloc_minimal.so) is missing from mysql 5.5 binary

Ensure that a "-DMALLOC_LIB=/foo/bar/libtcmalloc_minimal.so"
will ensure that this library gets included in the tar.gz
binary package.

It depends on the build environment to set this variable
to the correct path name, if it is available.
2010-10-03 18:24:45 +02:00
Alexander Nozdrin
34388f5315 Auto-merge from mysql-5.5. 2010-10-02 22:17:21 +04:00
Alexander Nozdrin
4cce72a929 Auto-merge from mysql-5.5-stage (used to be mysql-5.5-bugfixing). 2010-10-02 22:08:31 +04:00
Alexey Kopytov
d72c594739 Manual merge from mysql-5.1-bugteam into mysql-5.5-bugteam.
conflicts:
   conflict      dbug/dbug.c
   conflict      sql/sql_load.cc
2010-10-02 00:12:27 +04:00
Alexey Kopytov
00677a802b Automerge. 2010-10-01 23:56:55 +04:00
Mattias Jonsson
e33e27a664 Minor update of test to pass both with and without --ps-protocol 2010-10-01 21:32:40 +02:00
Mattias Jonsson
de54fc659e merge 2010-10-01 18:52:59 +02:00
Mattias Jonsson
38627075f9 merge 2010-10-01 18:36:53 +02:00
Mattias Jonsson
36e0ca0d7e merge 2010-10-01 18:29:40 +02:00
Mattias Jonsson
29acd77643 minor test result update after merge 2010-10-01 18:10:45 +02:00
Mattias Jonsson
ed4424a893 merge 2010-10-01 16:06:10 +02:00
Mattias Jonsson
20606cec59 Manual merge into mysql-5.5-bugteam 2010-10-01 15:59:07 +02:00
Bjorn Munch
ad1824eed0 upmerge 20304 2010-10-01 15:55:49 +02:00
Mattias Jonsson
3c555b6c18 merge 2010-10-01 15:41:27 +02:00
Vasil Dimov
1f1c2e22eb Merge mysql-5.5-innodb -> mysql-5.5-bugteam 2010-10-01 16:36:35 +03:00
Mattias Jonsson
fbb49d80eb merge 2010-10-01 15:32:03 +02:00
Mattias Jonsson
53fe2b31f2 removed a comment according to the review 2010-10-01 15:30:16 +02:00
Mattias Jonsson
9aa7484cfe merge 2010-10-01 15:25:13 +02:00
Vasil Dimov
ddc653bea0 Null merge mysql-5.1-bugteam -> mysql-5.5-bugteam
This is a null merge because it only contains InnoDB changes that
originated in mysql-5.1-innodb and have been manually ported into
mysql-5.5-innodb.
2010-10-01 15:59:59 +03:00
Vasil Dimov
4a9b4ed0dd Merge mysql-5.1-innodb -> mysql-5.1-bugteam 2010-10-01 15:39:44 +03:00
Mattias Jonsson
acc1b32675 Manual merge of bug#51851 from mysql-5.1-bugteam into mysql-5.5-bugteam 2010-10-01 14:16:00 +02:00
Vasil Dimov
75fc5b6a33 Fix a potential bug when using __sync_lock_test_and_set()
This is a manual merge from mysql-5.1-innodb of:

  revision-id: vasil.dimov@oracle.com-20100930102618-s9f9ytbytr3eqw9h
  committer: Vasil Dimov <vasil.dimov@oracle.com>
  timestamp: Thu 2010-09-30 13:26:18 +0300
  message:
    Fix a potential bug when using __sync_lock_test_and_set()

    TYPE __sync_lock_test_and_set (TYPE *ptr, TYPE value, ...)

    it is not documented what happens if the two arguments are of different
    type like it was before: the first one was lock_word_t (byte) and the
    second one was 1 or 0 (int).

    Approved by:	Marko (via IRC)
2010-10-01 14:51:00 +03:00
Mattias Jonsson
cfcf51b719 merge 2010-10-01 13:39:49 +02:00