Commit graph

23822 commits

Author SHA1 Message Date
He Zhenxing
56230bd67d Auto merge 2009-04-09 14:31:09 +08:00
He Zhenxing
435d6631aa Manually merge BUG#37145 to 5.1-bugteam 2009-04-09 07:42:51 +08:00
Alfranio Correia
65ff9e1b0b BUG#39393. Post-fix for test rpl_skip_error.
The result set for multi-row statements is not the same between STMT and
RBR and among different versions. Thus to avoid test failures, we are not
printing out such result sets. Note, however, that this does not have
impact on coverage and accuracy since the execution is able to continue
without further issues when an error is found on the master and such error
is set to be skipped.
2009-04-08 22:02:19 +01:00
Alfranio Correia
0ac476e3a8 merge 5.1-bugteam --> 5.1-bugteam (local) 2009-04-08 11:07:24 +01:00
Satya B
bd19731a7d merge to latest 5.1-bugteam 2009-04-07 18:44:37 +05:30
Satya B
8502705de4 merge 5.0-bugteam to 5.1-bugteam 2009-04-07 17:06:15 +05:30
Satya B
c045d1dcea Fix for Bug #43973 - backup_myisam.test fails on 6.0-bugteam
The test started failing following the push for BUG#41541.
Some of the algorithms access bytes beyond the input data
and this can affect up to one byte less than "word size"
which is BITS_SAVED / 8. 
      
Fixed by adding (BITS_SAVED / 8) -1 bytes to buffer size
(i.e. Memory Segment #2) to avoid accessing un-allocated data.
2009-04-07 16:54:32 +05:30
Satya B
809486414c merge 5.0-bugteam to 5.1-bugteam 2009-04-06 12:31:17 +05:30
Alfranio Correia
14870022ad merge 5.1-bugteam --> 5.1-bugteam (local) 2009-04-06 01:22:34 +01:00
Alfranio Correia
1287d8c53a BUG#39393 slave-skip-errors does not work when using ROW based replication
RBR was not considering the option --slave-skip-errors.
                              
To fix the problem, we are reporting the ignored ERROR(s) as warnings thus avoiding 
stopping the SQL Thread. Besides, it fixes the output of "SHOW VARIABLES LIKE 
'slave_skip_errors'" which was showing nothing when the value "all" was assigned 
to --slave-skip-errors.
                  
@sql/log_event.cc
  skipped rbr errors when the option skip-slave-errors is set.
@sql/slave.cc
  fixed the output of for SHOW VARIABLES LIKE 'slave_skip_errors'"
@test-cases
  fixed the output of rpl.rpl_idempotency
  updated the test case rpl_skip_error
2009-04-05 13:03:04 +01:00
Serge Kozlov
2ee7a7cff1 Bug#37716.
1. Test case was rewritten completely.
2. Test covers 3 cases:
 a) do deadlock on slave, wait retries of transaction, unlock slave before lock
timeout;
 b) do deadlock on slave and wait error 'lock timeout exceed' on slave;
 c) same as b) but if of max relay log size = 0;
3. Added comments inline.
4. Updated result file.
2009-04-04 01:33:13 +04:00
Davi Arnaut
ec762cbd82 Merge Bug#43230 into mysql-5.1-bugteam 2009-04-03 16:46:00 -03:00
Davi Arnaut
aebaf079d1 Bug#43230: SELECT ... FOR UPDATE can hang with FLUSH TABLES WITH READ LOCK indefinitely
The problem is that a SELECT .. FOR UPDATE statement might open
a table and later wait for a impeding global read lock without
noticing whether it is holding a table that is being waited upon
the the flush phase of the process that took the global read
lock.

The same problem also affected the following statements:

LOCK TABLES .. WRITE
UPDATE .. SET (update and multi-table update)
TRUNCATE TABLE ..
LOAD DATA ..

The solution is to make the above statements wait for a impending
global read lock before opening the tables. If there is no
impending global read lock, the statement raises a temporary
protection against global read locks and progresses smoothly
towards completion.

Important notice: the patch does not try to address all possible
cases, only those which are common and can be fixed unintrusively
enough for 5.0.
2009-04-03 16:11:54 -03:00
Guangbao Ni
48f435316d AutoMerged from pushbuild mysql-5.1-bugteam 2009-04-03 18:42:00 +00:00
Guangbao Ni
61ce70924c BUG#42640 mysqld crashes when unsafe statements are executed (STRICT_TRANS_TABLESmode)
Mysql server crashes because unsafe statements warning is wrongly elevated to error,
which is set the error status of Diagnostics_area of the thread in THD::binlog_query().
Yet the caller believes that binary logging shouldn't touch the status, so it will
set the status also later by my_ok(), my_error() or my_message() seperately
according to the execution result of the statement or transaction.
But the status of Diagnostics_area of the thread is allowed to set only once.

Fixed to clear the error wrongly set by binary logging, but keep the warning message.
2009-04-03 18:21:57 +00:00
Horst Hunger
33364242bb Fix belonging to bug#42838: Though this bug is only for 6.0 I put in some updated result files for 6.0 and this are the corrsponding resul files for 5.1, so that sys_vars should then run successfully also in 5.1. 2009-04-03 11:37:48 +02:00
Patrick Crews
4fda8858b1 Bug#43716: Test mysqlbinlog_row_big is failing, needs to be updated
Altered the test to accommodate the new behavior of max_allowed_packet.
Had to disconnect / reconnect the default connection for the new value to register.
Re-enabled certain parts of the test that were commented out and added
some setup / cleanup code to ensure proper reset of max_allowed_packet at the end of the test.

Re-recorded the .result file to account for changes to the test.
2009-04-02 18:34:18 -04:00
Alexander Nozdrin
641d706b0e Patch for Bug#38741: main.innodb_mysql crashes randomly (2).
It was a test case problem: one 'reap' statement was forgotten.
2009-04-02 12:21:51 +04:00
Bernt M. Johnsen
d40ee2190c Bug 43355 merged from 5.1 gca 2009-04-01 14:45:04 +02:00
Bernt M. Johnsen
e1f4b5c1c3 Bug 43355 merged from 5.1 gca 2009-04-01 14:39:36 +02:00
Gleb Shchepa
323609688b Backport bug #37348 fix 5.1 --> 5.0.
Original commentary:

Bug #37348: Crash in or immediately after JOIN::make_sum_func_list
            
The optimizer pulls up aggregate functions which should be aggregated in
an outer select. At some point it may substitute such a function for a field
in the temporary table. The setup_copy_fields function doesn't take this
into account and may overrun the copy_field buffer.
            
Fixed by filtering out the fields referenced through the specialized
reference for aggregates (Item_aggregate_ref).
Added an assertion to make sure bugs that cause similar discrepancy 
don't go undetected.
2009-04-01 16:02:26 +05:00
Georgi Kodinov
2b183bb11e auto merge 2009-04-01 13:03:53 +03:00
Georgi Kodinov
dccbde7a11 merged 5.1-main -> 5.1-bugteam 2009-04-01 12:57:34 +03:00
Georgi Kodinov
4e19677aa7 merged 5.0-main -> 5.0-bugteam 2009-04-01 12:50:27 +03:00
Bernt M. Johnsen
8046c576a2 Bug 43355 Prepared for commit on 5.1 gca 2009-04-01 10:58:55 +02:00
Sergey Glukhov
c08ceffded Bug#43183 ExctractValue() brings result list in missorder
The problem is that XML functions(items) do not reset null_value
before their execution and further item excution may use
null_value value of the previous result.
The fix is to reset null_value.
2009-04-01 13:40:33 +05:00
Ramil Kalimullin
a26f8d91aa Fix for bug#42944: partition not pruned correctly
Problem: we don't prune a LESS THAN partition if MAXVALUE is given and
given value is equal to a LESS THAN value.

Fix: prune partitions in such cases.
2009-04-01 10:34:59 +05:00
Bernt M. Johnsen
a8b1394c80 Bug 43355 Prepared for commit on 5.0 gca 2009-03-31 10:38:33 +02:00
Matthias Leich
bb604da6dd merge of fix for bug 43383 into actual tree 2009-03-30 16:12:27 +02:00
Matthias Leich
594c617f5d Merge of fix for bug 43383 into actual tree 2009-03-30 15:36:10 +02:00
Matthias Leich
350a77563a Merge 5.0 -> 5.1 of fix for bug 43383
+ disable the funcs_1.charset_collation_* tests which are broken because
  of bug 38346, 40209, 40545, 40618
2009-03-30 12:03:25 +02:00
Kristofer Pettersson
598b11a31f Automerge 2009-03-30 10:44:17 +02:00
Kristofer Pettersson
137f1e1ed6 Bug#40127 Multiple table DELETE IGNORE hangs on foreign key constraint violation
on 5.0            
The server crashes on an assert in net_end_statement indicating that the
Diagnostics area wasn't set properly during execution.
This happened on a multi table DELETE operation using the IGNORE keyword.
The keyword is suppose to allow for execution to continue on a best effort
despite some non-fatal errors. Instead execution stopped and no client
response was sent which would have led to a protocol error if it hadn't been
for the assert.
This patch corrects this issue by checking for the existence of an IGNORE
option before setting an error state during row-by-row delete iteration.
2009-03-27 17:08:14 +01:00
Staale Smedseng
d186014c04 Merge from 5.0-bugteam 2009-03-27 14:11:52 +01:00
Staale Smedseng
4575326317 Merge from 5.1-bugteam 2009-03-27 14:10:28 +01:00
Alexey Kopytov
3952372adb Automerge. 2009-03-27 15:59:09 +03:00
Alexey Kopytov
a37e43118d Automerge. 2009-03-27 15:58:34 +03:00
Staale Smedseng
70fdfcb6a2 Merge from 5.0-bugteam 2009-03-27 13:55:14 +01:00
Georgi Kodinov
124d5e730c auto-merge 2009-03-27 14:15:50 +02:00
Georgi Kodinov
1b74eac6cb disabled a failing test suite due to bug #42311 2009-03-27 14:12:33 +02:00
Tatiana A. Nurnberg
5d0564ea48 auto-merge 2009-03-27 12:40:53 +01:00
Tatiana A. Nurnberg
858b8af739 Bug#43748: crash when non-super user tries to kill the replication threads
Test was flakey on some machines and showed spurious
reds for races.

New-and-improved test makes do with fewer statements,
no mysqltest-variables, and no backticks. Should hope-
fully be more robust. Heck, it's debatable whether we
should have a test for this, anyway.
2009-03-27 12:20:37 +01:00
Staale Smedseng
fce11a8bb1 Bug#39953 Triggers are not working properly with multi table
updates

Attempt to execute trigger or stored function with multi-UPDATE
which used - but didn't update - a table that was also used by
the calling statement led to an error. Read-only reference to
tables used in the calling statement should be allowed.
 
This problem was caused by the fact that check for conflicting
use of tables in SP/triggers was performed in open_tables(),
and in case of multi-UPDATE we didn't know exact lock type at
this stage.

We solve the problem by moving this check to lock_tables(), so
it can be performed after exact lock types for tables used by
multi-UPDATE are determined.
2009-03-27 12:09:15 +01:00
Georgi Kodinov
b1bc018253 Worked around the problem described in bug #43884. 2009-03-27 12:59:31 +02:00
Alexey Kopytov
94926217d8 Manual merge. 2009-03-27 13:40:35 +03:00
Alexey Kopytov
afb2b6de68 Fix for bug #43432: Union on floats does unnecessary rounding
UNION could convert fixed-point FLOAT(M,D)/DOUBLE(M,D) columns  
to FLOAT/DOUBLE when aggregating data types from the SELECT  
substatements. While there is nothing particularly wrong with  
this behavior, especially when M is greater than the hardware  
precision limits, it could be confusing in cases when all  
SELECT statements in a union have the same  
FLOAT(M,D)/DOUBLE(M,D) columns with equal precision  
specifications listed in the same position.  
  
Since the manual is quite vague on what data type should be  
returned in such cases, the bug was fixed by implementing the  
most 'expected' behavior: do not convert FLOAT(M,D)/DOUBLE(M,D)  
to anything else if all SELECT statements in a UNION have the  
same precision for that column.
2009-03-27 13:12:50 +03:00
Ramil Kalimullin
8d3aceb09e Merge 2009-03-27 13:34:24 +04:00
Ramil Kalimullin
2005f3c72c Fix for bug #26288: savepoint not deleted, comit on empty transaction
Problem: commit doesn't delete savepoints if there are no changes 
in the transaction.

Fix: delete them in such cases.
2009-03-27 10:24:32 +04:00
He Zhenxing
9530126822 BUG#37145 Killing a statement doing DDL may log binlog event with error code 1053
When the thread executing a DDL was killed after finished its
execution but before writing the binlog event, the error code in
the binlog event could be set wrongly to ER_SERVER_SHUTDOWN or
ER_QUERY_INTERRUPTED.

This patch fixed the problem by ignoring the kill status when
constructing the event for DDL statements.

This patch also included the following changes in order to
provide the test case.

 1) modified mysqltest to support variable for connection command

 2) modified mysql-test-run.pl, add new variable MYSQL_SLAVE to
    run mysql client against the slave mysqld.
2009-03-27 13:19:50 +08:00
Leonard Zhou
75ab3274c8 Merge 2009-03-27 11:19:48 +08:00