Commit graph

57423 commits

Author SHA1 Message Date
Sergey Vojtovich
d805c1214a This patch implements testing InnoDB plugin milestone. 2009-06-24 22:18:58 +05:00
Sergey Vojtovich
88b2fe2f56 Fixed build failures. 2009-06-18 13:49:44 +05:00
Vladislav Vaintroub
6a1e289f37 merge 2009-06-17 16:32:16 +02:00
Vladislav Vaintroub
be7c2fa141 Fixed type defintion for os_thread_id_t on 64 bit Windows.
It used to be declared as ulint, which is 32/64 bit integer depending on OS bitness.
However this declaration lead to problems with os_compare_and_swap_thread_id 
implementation which operated on 32 bit integers (InterlockedCompareExchange)

Using 64 bit int   lead to  wrong result in os_compare_and_swap_thread_id 
and to crash/assertion in  rw_lock_set_writer_id_and_recursion_flag()

The fix is to use 4 byte integer to os_thread_id type definition.
2009-06-17 16:14:08 +02:00
Sergey Vojtovich
392eaea958 When using bundled zlib, INNODB_PLUGIN was looking for
zlib headers in wrong location.

Fixed by using path exported by zlib.m4 macro.
2009-06-17 14:38:41 +05:00
Sergey Vojtovich
4581df7c7f Make innodb test suite pass with INNODB_PLUGIN. 2009-06-11 17:57:44 +05:00
Satya B
fedd37b5eb Remove the following tests and include files as they are already in
the mysql test suite.

Tests removed:
1. innodb_trx_weight.test
2. innodb_bug35220.test

Include files removed:
1. have_innodb.inc
2. ctype_innodb_like.inc
3. innodb_trx_weight.inc

Also add the missing opt file for the test innodb-use-sys-malloc.test
2009-06-11 16:50:53 +05:30
Satya B
2bcee3a9bb merge from mysql-5.1-innodb_plugin 2009-06-11 12:34:49 +05:30
Sergey Vojtovich
4adad43f75 Removed legacy name for innodb_plugin SE, so --with[out]-innodb
option doesn't affect innodb_plugin.

Currently it works as following:
* configure without relevant options producing two dynamic plugins
* configure --with-plugin-innodb (or legacy --with-innodb) producing
  static standard InnoDB
* configure --without-plugin-innodb (or legacy --without-innodb)
  disabling standard InnoDB
* configure --with-plugin-innodb_plugin producing dynamic innodb_plugin
* configure --without-plugin-innodb_plugin disabling innodb_plugin
2009-06-10 22:50:00 +05:00
Satya B
635b4fe3d1 Add innodb plugin tests to a new mysql test suite 'innodb'.
Created a test suite 'innodb' under mysql-test/suite/innodb for the innodb plugin tests.
test suite 'innodb' has tests only which are not under any other mysql-test suites.

Total 14 testcases are added to the test suite.

Note: the patches in storage/innodb_plugin/mysql-test/patches are not applied yet
2009-06-10 19:21:20 +05:30
Vladislav Vaintroub
31b79618e3 Backport WL#3653 to 5.1 to enable bundled innodb plugin.
Remove custom DLL loader code from innodb plugin code, use 
symbols exported from mysqld.
2009-06-10 10:59:49 +02:00
Tomas Ulin
8ff151e655 add missing file in Makefile.am 2009-06-09 21:26:04 +02:00
Satya B
518e249853 merge from mysql-5.1-innodb_plugin branch.
change tree name to 'mysql-5.1-innodb_plugin'
2009-06-05 17:03:33 +05:30
Bjorn Munch
58436f5c22 merge from 5.1-mtr 2009-06-05 09:42:15 +02:00
Bjorn Munch
912f971849 Bug #45256 Enable 'auto' for mtr --parallel
Let the user specify 'auto' for parallel value
Also set --parallel=auto in default.push so we can get this tested.
2009-06-03 12:46:04 +02:00
Bjorn Munch
5ce3d7a202 Bug #45190 mtr should report some statistics even if aborting after too many tests fail
Added calls to mtr_report_stats() also after timeout or too many failures
2009-06-02 10:00:45 +02:00
Satya B
a4f69c8951 Compile the Innodb plugin so that it can be installed as dynamic plugin only for now.
The Innodb plugin 1.0.4 can be installed dynamically using the 'INSTALL PLUGIN' syntax

If mysqld is already statically linked with the inbuilt innodb, it is not possible to 
install the innodb plugin 1.0.4 dynamically. Doing so would throw this error - Function
'innodb' already exists.
2009-05-29 18:30:29 +05:30
Bjorn Munch
a24465ac27 fixed .bzr-mysql/default.conf 2009-05-29 13:10:20 +02:00
Bjorn Munch
524bd596e2 merge from 5.1 main 2009-05-29 13:04:02 +02:00
Bjorn Munch
763579e65b Bug #43659 MTR2 should report worker data for tests when using --parallel > 1
Adding "w# " before the test result
Also enable --parallel=2 so this can be tested.
2009-05-28 13:02:03 +02:00
Georgi Kodinov
d4b11c0990 merge 5.0-main -> 5.1-main 2009-05-28 10:36:39 +03:00
Georgi Kodinov
ab516c5cab changed the version 2009-05-28 10:35:29 +03:00
Bjorn Munch
f26f8edff4 cherry picking fix for Bug #39542 from 6.0-runtime 2009-05-27 22:54:40 +02:00
Georgi Kodinov
7b05c2350a merged 5.0-bugteam 2009-05-27 18:14:09 +03:00
Georgi Kodinov
73cf0d815c automerge 2009-05-27 17:09:09 +03:00
Sergey Glukhov
a6ccad60b4 5.0-bugteam->5.1-bugteam merge 2009-05-27 15:42:19 +05:00
Sergey Glukhov
cb07978da9 Bug#41212 crash after race condition between merge table and table_cache evictions
On 64-bit Windows: querying MERGE table with keys may cause
server crash.The problem is generic and may affect any statement
accessing MERGE table cardinality values.
When MERGE engine was copying cardinality statistics, it was
using incorrect size of element in cardinality statistics array
(sizeof(ptr)==8 instead of sizeof(ulong)==4), causing access
of memory beyond of the allocated bounds.
2009-05-27 15:34:21 +05:00
Satya B
1b9fe0bbac Adding innodb_plugin-1.0.4 as storage/innodb_plugin. 2009-05-27 15:15:59 +05:30
Satya B
00c2d79a6d Fix post commit and post push email adress and also the tree name. 2009-05-27 14:55:56 +05:30
Bjorn Munch
b300be36e4 Bug #45120 Fix of 44922 caused regression in funcs_1.processlist_priv_no_prot
Protected '' in connect command with ""
2009-05-27 10:54:59 +02:00
Sergey Glukhov
7dc42f175f Bug#43940 64-bit windows myisamchk doesn't support key_buffer_size > 4G
The fix is to allow myisamchk to use >4G key_buffer_size on win64
2009-05-27 13:11:28 +05:00
timothy.smith@sun.com
a87c98b503 Merge from mysql-5.0.82-release 2009-05-27 00:44:58 +02:00
Bjorn Munch
f7f400bc5e Bug #44964 mysqltest: connection <connection><some spaces>; fails now
Incorrection assumption about delimiter character in connection command
2009-05-26 12:45:14 +02:00
Bjorn Munch
bec841ce5d merge from 5.1-mtr 2009-05-25 22:58:31 +02:00
Staale Smedseng
986bcb5fc6 Bug #44736 mysqld_safe's my_which() is broken and
doesn't find 'logger'

Due to a variable quoting mistake, the $PATH environment
variable isn't parsed correctly when searching for the
existence of the desired executable(s) (logger in this 
case).

This patch removes the quotes.
2009-05-25 18:21:40 +02:00
Bjorn Munch
a3c7d96742 Bug #44922 mysqltest's query_get_value function can't work with queries containing ','
check_command_args() always looks for the first , (or whatever)
Extended check_command_args() to let arguments be quoted
Added test in mysqltest.test
2009-05-25 17:19:20 +02:00
Davi Arnaut
981ff94d80 Bug#42158: leak: SSL_get_peer_certificate() doesn't have matching X509_free()
The problem is that the server failed to follow the rule that
every X509 object retrieved using SSL_get_peer_certificate()
must be explicitly freed by X509_free(). This caused a memory
leak for builds linked against OpenSSL where the X509 object
is reference counted -- improper counting will prevent the
object from being destroyed once the session containing the
peer certificate is freed.

The solution is to explicitly free every X509 object used.
2009-05-25 10:00:18 -03:00
Georgi Kodinov
8fb82e3fe0 Bug #44399 : crash with statement using TEXT columns, aggregates, GROUP BY, and
HAVING
            
When calculating GROUP BY the server caches some expressions. It does
that by allocating a string slot (Item_copy_string) and assigning the 
value of the expression to it. This effectively means that the result
type of the expression can be changed from whatever it was to a string.
As this substitution takes place after the compile-time result type 
calculation for IN but before the run-time type calculations, 
it causes the type calculations in the IN function done at run time 
to get unexpected results different from what was prepared at compile time.
                  
In the CASE ... WHEN ... THEN ... statement there was a similar problem
and it was solved by artificially adding a STRING argument to the set of 
types of the IN/CASE arguments at compile time, so if any of the 
arguments of the CASE function changes its type to a string it will 
still be covered by the information prepared at compile time.
2009-05-25 11:00:40 +03:00
Davi Arnaut
d30375be39 Workaround a compiler that does not support certain C99 features for C code. 2009-05-23 10:19:58 -03:00
Luis Soares
e2aad850ed BUG#41725: upmerge: 5.0-bt --> 5.1-bt 2009-05-23 00:29:41 +01:00
Luis Soares
2b4fcc1dbf BUG#41725: slave crashes when inserting into temporary table after
stop/start slave
      
When stopping and restarting the slave while it is replicating
temporary tables, the server would crash or raise an assertion
failure. This was due to the fact that although temporary tables are
saved between slave threads restart, the reference to the thread in
use (table->in_use) was not being properly updated when the restart
happened (it would still reference the old/invalid thread instead of
the new one).
      
This patch addresses this issue by resetting the reference to the new
slave thread on slave thread restart.
2009-05-23 00:15:21 +01:00
Patrick Crews
321189c72c merge 2009-05-22 11:38:52 -04:00
Patrick Crews
53c09b3a46 merge 5.0-> 5.1 2009-05-22 11:24:45 -04:00
Patrick Crews
6c31d59bf4 Bug#40465 - mysqldump.test does no checking of dump or restore
Created new .test file - mysqldump_restore that does test restore from mysqldump
output for a limited number of basic cases.
Create new .inc file - mysqldump.inc - renames original table and uses mysqldump
output to recreate the table, then uses diff_tables.inc to compare the two tables.
Backported include/diff_tables.inc to facilitate this testing.
New patch incorporating review feedback prior to push.

mysqldump.test - removed redundant call to include/have_log_bin.inc (was used twice in the test!)
2009-05-22 10:38:17 -04:00
Gleb Shchepa
f5c9308184 Bug #42778: delete order by null global variable causes
assertion .\filesort.cc, line 797

Minor fix to test case (embedded server failure).
2009-05-22 11:44:11 +05:00
Gleb Shchepa
387a54fbbd Bug #42778: delete order by null global variable causes
assertion .\filesort.cc, line 797

A query with the "ORDER BY @@some_system_variable" clause,
where @@some_system_variable is NULL, causes assertion
failure in the filesort procedures.

The reason of the failure is in the value of
Item_func_get_system_var::maybe_null: it was unconditionally
set to false even if the value of a variable was NULL.
2009-05-22 01:22:46 +05:00
Patrick Crews
2bb44aef97 Bug#40465: mysqldump.test does no checking of dump or restore.
Created new .test file - mysqldump_restore that does this for a limited number
of basic cases.
Created new .inc file - mysqldump.inc - renames original table and uses mysqldump
output to recreate the table, then uses diff_tables.inc to compare the two tables.
Backported include/diff_tables.inc to facilitate this testing.
2009-05-21 16:03:53 -04:00
Alexey Kopytov
019e8a6c71 Automerge. 2009-05-21 21:51:48 +04:00
Alexey Kopytov
17dba81fcb Automerge. 2009-05-21 21:50:58 +04:00
Alexey Kopytov
1341ab2347 Attempt #2 to fix PB failures introduced by the patch for bug #44796.
Since max_allowed_packet is a read-only variable in 5.1 and up,
disable warnings to avoid unnecessary test case complication.
2009-05-21 21:50:17 +04:00