Commit graph

57702 commits

Author SHA1 Message Date
V Narayanan
b22fc3f7cd merging with mysql-5.1-bugteam. 2009-07-07 12:06:35 +05:30
Georgi Kodinov
af1f8c6dd8 null merged the disablement : problem is not present in 5.1 2009-07-06 20:02:56 +03:00
Georgi Kodinov
6ae45ddbca disable ndb_autodiscover2 : dependent on the disabled ndb_autodiscover 2009-07-06 20:00:43 +03:00
Georgi Kodinov
9b5afbd551 Bug #45974: disable test case in 5.1-bugteam 2009-07-06 18:17:39 +03:00
Georgi Kodinov
5625e1a1d7 null-merged the test case disablement in bug 45972 to 5.1 2009-07-06 17:47:51 +03:00
Georgi Kodinov
bbaa583618 Bug#45972: disable the test case in 5.0 2009-07-06 17:44:25 +03:00
Georgi Kodinov
731e7fa2ef null-merged the disabled test cases. 2009-07-06 13:36:09 +03:00
Georgi Kodinov
1e864c7a26 null-merge the mark of bug #38499 to big_test : it's running faster on 5.1 2009-07-06 13:30:25 +03:00
Georgi Kodinov
7f6a794e3f Bug #35148: ndb_autodiscover3 disabled 2009-07-06 13:27:19 +03:00
Georgi Kodinov
b73f91aa3d Bug #35148: disabled testcase loaddata_autocom_ndb 2009-07-06 13:23:35 +03:00
Georgi Kodinov
06ff4d7a8b Bug #45521: disabled the test case 2009-07-06 13:20:41 +03:00
Georgi Kodinov
efe4c883ba Bug #38499 : test marked as a big test : takes approx 275 secs on a P4 2.4
GHz.
2009-07-06 13:15:40 +03:00
Georgi Kodinov
4e3939ae65 automerge 2009-07-06 13:07:38 +03:00
Georgi Kodinov
ca4b746f0a null-merged test cases disablement 2009-07-06 12:07:29 +03:00
Georgi Kodinov
99362dca7d Bug#38315 and Bug#35148: disabled sporadically failing NDB tests 2009-07-06 12:01:56 +03:00
V Narayanan
148141fa70 Bug#45803 Inaccurate estimates for partial key values with IBMDB2I
Some collations were causing IBMDB2I to report
inaccurate key range estimations to the optimizer
for LIKE clauses that select substrings. This can
be seen by running EXPLAIN. This problem primarily
affects multi-byte and unicode character sets.

This patch involves substantial changes to several
modules. There are a number of problems with the
character set and collation handling. These problems
have been or are being fixed,  and a comprehensive
test has been included which should provide much
better coverage than there was before. This test
is enabled only for IBM i 6.1, because that version
has support for the greatest number of collations.
2009-07-06 14:19:32 +05:30
Alfranio Correia
743fc577b5 auto-merge mysql-5.1-bugteam (local) --> mysql-5.1-bugteam 2009-07-06 09:19:36 +01:00
Alfranio Correia
508fe9dd15 BUG#44581 Slave stops when transaction with non-transactional table gets lock wait
timeout
            
In STMT and MIXED modes, a statement that changes both non-transactional and
transactional tables must be written to the binary log whenever there are
changes to non-transactional tables. This means that the statement gets into the
binary log even when the changes to the transactional tables fail. In particular
, in the presence of a failure such statement is annotated with the error number
and wrapped in a begin/rollback. On the slave, while applying the statement, it
is expected the same failure and the rollback prevents the transactional changes
to be persisted.
            
Unfortunately, statements that fail due to concurrency issues (e.g. deadlocks,
timeouts) are logged in the same way causing the slave to stop as the statements
are applied sequentially by the SQL Thread. To fix this bug, we automatically
ignore concurrency failures on the slave. Specifically, the following failures
are ignored: ER_LOCK_WAIT_TIMEOUT, ER_LOCK_DEADLOCK and ER_XA_RBDEADLOCK.
2009-07-06 09:02:14 +01:00
Ramil Kalimullin
381da0c9d8 Fix for bug#42364 reverted. 2009-07-06 11:55:53 +05:00
Kristofer Pettersson
7f1715a7c7 5.0-bugteam -> 5.1-bugteam 2009-07-03 20:49:30 +02:00
Kristofer Pettersson
6455c5689d Bug#37274 client 'status' command doesn't print all info after losing connection to
server

If the server connection was lost during repeated status commands,
the client would fail to detect this and the client output would be inconsistent.

This patch fixes this issue by making sure that the server is online
before the client attempts to execute the status command.
2009-07-03 13:55:45 +02:00
Alexey Kopytov
0c5207f52f Automerge. 2009-07-03 14:43:54 +04:00
Alexey Kopytov
c936b6444a Manual merge. 2009-07-03 14:36:04 +04:00
Sergey Glukhov
c2ed9d36eb 5.0-bugteam->5.1-bugteam merge 2009-07-03 13:39:22 +05:00
Sergey Glukhov
1a539f170d Bug#45806 crash when replacing into a view with a join!
The crash happend because for views which are joins
we have table_list->table == 0 and 
table_list->table->'any method' call leads to crash.
The fix is to perform table_list->table->file->extra()
method for all tables belonging to view.
2009-07-03 13:35:00 +05:00
Bernt M. Johnsen
7e4cb19a8c Prepare for push 2009-07-03 10:36:10 +02:00
Sergey Glukhov
5072f4da36 Bug#42364 SHOW ERRORS returns empty resultset after dropping non existent table
enabled message storing into error message list
for 'drop table' command
2009-07-03 13:22:06 +05:00
Bernt M. Johnsen
5f1d2aaee7 automerge 2009-07-03 10:33:34 +02:00
Bernt M. Johnsen
f8a3609377 Prepare for push 2009-07-03 10:32:17 +02:00
Bernt M. Johnsen
ff002a8ca3 Bug#15866 Prepared for push on 5.1 2009-07-03 10:23:16 +02:00
Bernt M. Johnsen
8b5986d77f Bug#15866 Prepared for push on 5.0 2009-07-03 10:19:32 +02:00
Alexey Kopytov
4692566f9e Bug #45262: Bad effects with CREATE TABLE and DECIMAL
Using DECIMAL constants with more than 65 digits in CREATE 
TABLE ... SELECT led to bogus errors in release builds or 
assertion failures in debug builds. 
 
The problem was in inconsistency in how DECIMAL constants and 
fields are handled internally. We allow arbitrarily long 
DECIMAL constants, whereas DECIMAL(M,D) columns are limited to 
M<=65 and D<=30. my_decimal_precision_to_length() was used in 
both Item and Field code and truncated precision to 
DECIMAL_MAX_PRECISION when calculating value length without 
adjusting precision and decimals. As a result, a DECIMAL 
constant with more than 65 digits ended up having length less 
than precision or decimals which led to assertion failures. 
 
Fixed by modifying my_decimal_precision_to_length() so that 
precision is truncated to DECIMAL_MAX_PRECISION only for Field 
object which is indicated by the new 'truncate' parameter. 
 
Another inconsistency fixed by this patch is how DECIMAL 
constants and expressions are handled for CREATE ... SELECT. 
create_tmp_field_from_item() (which is used for constants) was 
changed as a part of the bugfix for bug #24907 to handle long 
DECIMAL constants gracefully. Item_func::tmp_table_field() 
(which is used for expressions) on the other hand was still 
using a simplistic approach when creating a Field_new_decimal 
from a DECIMAL expression.
2009-07-03 11:41:19 +04:00
Georgi Kodinov
5572f8e7de Bug #45807: crash accessing partitioned table and sql_mode
contains ONLY_FULL_GROUP_BY

The partitioning code needs to issue a Item::fix_fields()
on the partitioning expression in order to prepare 
it for being evaluated.
It does this by creating a special table and a table list 
for the scope of the partitioning expression.
But when checking ONLY_FULL_GROUP_BY the 
Item_field::fix_fields() was relying that there always be
cached_table set and was trying to use it to get the 
select_lex of the SELECT the field's table is in.
But the cached_table was not set by the partitioning code
that creates the artificial TABLE_LIST used to resolve the
partitioning expression and this resulted in a crash.
 
Fixed by rectifying the following errors :
1. Item_field::fix_fields() : the code that check for 
ONLY_FULL_GROUP_BY relies on having tables with 
cacheable_table set. This is mostly true, the only 
two exceptions being the partitioning context table
and the trigger context table.
Fixed by taking the current parsing context if no pointer
to the TABLE_LIST instance is present in the cached_table.

2. fix_fields_part_func() : 

2a. The code that adds the table being created to the 
scope for the partitioning expression is mostly a copy 
of the add_table_to_list and friends with one exception :
it was not marking the table as cacheable (something that
normal add_table_to_list is doing). This caused the 
problem in the check for ONLY_FULL_GROUP_BY in 
Item_field::fix_fields() to appear.
Fixed by setting the correct members to make the table
cacheable.
The ideal structural fix for this is to use a unified 
interface for adding a table to a table list 
(add_table_to_list?) : noted in a TODO comment

2b. The Item::fix_fields() was called with a NULL destination
pointer. This causes uninitalized memory reads in the 
overloaded ::fix_fields() function (namely 
Item_field::fix_fields()) as it expects a non-zero pointer 
there. Fixed by passing the source pointer similarly to how 
it's done in JOIN::prepare().
2009-07-02 17:42:00 +03:00
Matthias Leich
7029f8bbe8 Merge 5.0 -> 5.1 of fix for bug 45902 2009-07-02 15:40:27 +02:00
Matthias Leich
90c97d7ccc Fix for Bug#45902 rpl_sp fails sporadically in check testcases
Details:
- Add "sync_slave_with_master" at test end
- Restore the initial value of log_bin_trust_function_creators
2009-07-02 13:22:12 +02:00
V Narayanan
c2141faf1a Bug#45793 macce charset causes error with IBMDB2I
Creating an IBMDB2I table with the macce character set
is successful, but any attempt to insert data into the
table was failing.

This was happening because the character set name "macce"
is not a valid iconv descriptor for IBM i PASE. This patch
adds an override to convertTextDesc to use the equivalent
valid iconv descriptor "IBM-1282" instead.
2009-07-02 13:34:23 +05:30
Staale Smedseng
87695199d8 Merge from 5.0 2009-07-01 14:32:04 +02:00
Staale Smedseng
490f443221 Bug #45790 Potential DoS vector: Writing of user input to log
without proper formatting
      
The problem is that a suitably crafted database identifier
supplied to COM_CREATE_DB or COM_DROP_DB can cause a SIGSEGV,
and thereby a denial of service. The database name is printed
to the log without using a format string, so potential
attackers can control the behavior of my_b_vprintf() by
supplying their own format string. A CREATE or DROP privilege
would be required.
      
This patch supplies a format string to the printing of the
database name. A test case is added to mysql_client_test.
2009-07-01 14:09:44 +02:00
Satya B
c63b224290 merge to 5.1-bugteam 2009-07-01 11:07:02 +05:30
Satya B
2e3982b4cf Fix build failure after applying Innodb snapshot 5.1-ss5282
After applying Innodb snapshot 5.1-ss5282, build was broken
because of missing header file. 

Adding the header file to Makefile.am after informing the 
innodb developers.
2009-07-01 11:06:05 +05:30
Luis Soares
d553a7fce5 merge: 5.1-bt bug branch --> 5.1-bt latest 2009-06-30 19:40:38 +01:00
Davi Arnaut
6b15ecd335 Post-merge fix for Innodb snapshot.
Add new header to Makefile.am so it gets bundled.
2009-06-30 15:29:10 -03:00
Staale Smedseng
db1591a7a2 Merge from 5.0 2009-06-29 16:00:47 +02:00
Staale Smedseng
19dfaa5824 Merge from 5.0-bt 2009-06-29 15:17:01 +02:00
Satya B
a0b5d1be2b merge to mysql-5.1-bugteam branch 2009-06-29 18:38:19 +05:30
Satya B
3766e560f0 merge to mysql-5.1-bugteam 2009-06-29 18:33:11 +05:30
Christoffer Hall
c3aa8a08b5 Merge from team tree 2009-06-29 14:56:41 +02:00
Christoffer Hall
eaf50ced6d Merge from main branch 2009-06-29 14:55:22 +02:00
Satya B
dab0e113f5 Null merge mysql-5.0-bugteam to mysql-5.1-bugteam 2009-06-29 17:59:44 +05:30
Satya B
5e0c653f03 Additional Fix for BUG#40565 - Update Query Results in "1 Row Affected"
But Should Be "Zero Rows"


After applying the innodb snapshot 5.0-ss5406 for bug#40565, the windows push build
tests failed because of the missing cast of void * pointer in row0sel.c file

Informed the innodb developers and received patch by email.
2009-06-29 17:57:22 +05:30