- 11 May, 2010 9 commits
-
-
Marko Mäkelä authored
------------------------------------------------------------ revno: 3459 revision-id: marko.makela@oracle.com-20100511105308-grp2t3prh3tqivw0 parent: marko.makela@oracle.com-20100511105012-b2t7wvz6mu6bll74 parent: marko.makela@oracle.com-20100505123901-xjxu93h1xnbkfkq0 committer: Marko Mäkelä <marko.makela@oracle.com> branch nick: mysql-5.1-innodb timestamp: Tue 2010-05-11 13:53:08 +0300 message: Merge a patch from Facebook to fix Bug #53290 commit e759bc64eb5c5eed4f75677ad67246797d486460 Author: Ryan Mack Date: 3 days ago Bugfix for 53290, fast unique index creation fails on duplicate null values Summary: Bug in the fast index creation code incorrectly considers null values to be duplicates during block merging. Innodb policy is that multiple null values are allowed in a unique index. Null duplicates were correctly ignored while sorting individual blocks and with slow index creation. Test Plan: mtr, including new test, load dbs using deferred index creation License: Copyright (C) 2009-2010 Facebook, Inc. All Rights Reserved. Dual licensed under BSD license and GPLv2. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY FACEBOOK, INC. ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL FACEBOOK, INC. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; version 2 of the License. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ------------------------------------------------------------ revno: 3453.2.1 revision-id: marko.makela@oracle.com-20100505123901-xjxu93h1xnbkfkq0 parent: marko.makela@oracle.com-20100505120555-ukoq1gklpheslrxs committer: Marko Mäkelä <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Wed 2010-05-05 15:39:01 +0300 message: Merge a contribution from Ryan Mack at Facebook: Bugfix for 53290, fast unique index creation fails on duplicate null values Summary: Bug in the fast index creation code incorrectly considers null values to be duplicates during block merging. Innodb policy is that multiple null values are allowed in a unique index. Null duplicates were correctly ignored while sorting individual blocks and with slow index creation. Test Plan: mtr, including new test, load dbs using deferred index creation DiffCamp Revision: 110840 Reviewed By: mcallaghan CC: mcallaghan, mysql-devel@lists Revert Plan: OK
-
Marko Mäkelä authored
------------------------------------------------------------ revno: 3458 revision-id: marko.makela@oracle.com-20100511105012-b2t7wvz6mu6bll74 parent: marko.makela@oracle.com-20100511104910-nim8kgguawpis7zo committer: Marko Mäkelä <marko.makela@oracle.com> branch nick: mysql-5.1-innodb timestamp: Tue 2010-05-11 13:50:12 +0300 message: Do not demand that buf_page_t be fully initialized on 64-bit systems. There may be padding before buf_page_t::zip. (Bug #53307)
-
Marko Mäkelä authored
------------------------------------------------------------ revno: 3457 revision-id: marko.makela@oracle.com-20100511104910-nim8kgguawpis7zo parent: marko.makela@oracle.com-20100511104500-c6kzd0bg5s42p8e9 committer: Marko Mäkelä <marko.makela@oracle.com> branch nick: mysql-5.1-innodb timestamp: Tue 2010-05-11 13:49:10 +0300 message: btr_page_split_and_insert(): Add an assertion suggested by Sunny Bains when reviewing Bug #52964.
-
Marko Mäkelä authored
------------------------------------------------------------ revno: 3456 revision-id: marko.makela@oracle.com-20100511104500-c6kzd0bg5s42p8e9 parent: vasil.dimov@oracle.com-20100510132852-cz457uqvj8iiy9mm committer: Marko Mäkelä <marko.makela@oracle.com> branch nick: mysql-5.1-innodb2 timestamp: Tue 2010-05-11 13:45:00 +0300 message: Remove a stray expression. Spotted by Sunny Bains.
-
Vasil Dimov authored
-
Vasil Dimov authored
-
Sunny Bains authored
-
Sunny Bains authored
before trying to access the transaction instance. rb://336
-
Sunny Bains authored
when the purge thread completes by calling srv_suspend_thread().
-
- 10 May, 2010 4 commits
-
-
Inaam Rana authored
for the new parameters introduced in the plugin 1.1. Now that we have basic tests for all these new parameters it is no longer needed to adjust the all_vars.result file.
-
Marko Makela authored
------------------------------------------------------------ revno: 3454 committer: Marko Makela <mmakela@bk-internal.mysql.com> branch nick: mysql-5.1-innodb timestamp: Mon 2010-05-10 13:37:52 +0200 message: Add an innodb test case for Bug #49164.
-
Marko Makela authored
------------------------------------------------------------ revno: 3450 committer: Marko Mäkelä <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Wed 2010-05-05 14:24:11 +0300 message: row_merge_drop_temp_indexes(): Load the table via the dictionary cache. Allow multiple indexes to be dropped. (Bug #53256)
-
Sunny Bains authored
Check that all background threads are suspended or shutdown instead of just checking for the master thread. rb://333
-
- 07 May, 2010 4 commits
-
-
Calvin Sun authored
Change types of srv_purge_batch_size and srv_n_purge_threads from ulint to ulong.
-
Calvin Sun authored
Suggested by Vlad.
-
Alexander Nozdrin authored
-
Alexander Nozdrin authored
-
- 05 May, 2010 9 commits
-
-
Marko Mäkelä authored
------------------------------------------------------------ revno: 3449 revision-id: marko.makela@oracle.com-20100505104425-39y6qbffgotrhck2 parent: marko.makela@oracle.com-20100505104001-883pqiepo384qr5h committer: Marko Mäkelä <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Wed 2010-05-05 13:44:25 +0300 message: Factor out innodb_multi_update.test from innodb.test
-
Alexander Nozdrin authored
The bug happened under the following condition: - there was a user variable of type REAL, containing NULL value - there was a table with a NOT_NULL column of any type but REAL, having default value (or auto increment); - a row was inserted into the table with the user variable as value. A warning was emitted here. The problem was that handling of NULL values of REAL type was not properly implemented: it didn't expect that REAL NULL value can be assigned to other data type. Basically, the problem was that set_field_to_null() was used instead of set_field_to_null_with_conversions(). The fix is to use the right function, or more generally, to allow conversion of REAL NULL values to other data types.
-
Alexander Barkov authored
Problem: item->name was NULL for Item_user_var_as_out_param which made strcmp(something, item->name) crash in the LOAD XML code. Fix: - item_func.h: Adding set_name() in constuctor for Item_user_var_as_out_param - sql_load.cc: Changing the condition in write_execute_load_query_log_event() which distiguished between Item_user_var_as_out_param and Item_field from if (item->name == NULL) to if (item->type() == Item::FIELD_ITEM) - loadxml.result, loadxml.test: adding tests
-
Vasil Dimov authored
-
Marko Mäkelä authored
------------------------------------------------------------ revno: 3446 revision-id: marko.makela@oracle.com-20100505100507-6kcd2hf32hruxbv7 parent: marko.makela@oracle.com-20100505095328-vetnl0flhmhao7p5 committer: Marko Mäkelä <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Wed 2010-05-05 13:05:07 +0300 message: Add Valgrind diagnostics to track down Bug #38999. ------------------------------------------------------------
-
Vasil Dimov authored
-
Vasil Dimov authored
-
Alexander Barkov authored
Problem: after introduction of "WL#2649 Number-to-string conversions" This query: SET NAMES cp850; -- Or any other non-latin1 ASCII-based character set SELECT * FROM t1 WHERE datetime_column='2010-01-01 00:00:00' started to add extra character set conversion: SELECT * FROM t1 WHERE CONVERT(datetime_column USING cp850)='2010-01-01 00:00:00'; so index on DATETIME column was not used anymore. Fix: avoid convertion of NUMERIC/DATETIME items (i.e. those with derivation DERIVATION_NUMERIC).
-
Horst.Hunger authored
-
- 04 May, 2010 14 commits
-
-
Omer BarNir authored
-
Omer BarNir authored
-
Alexander Nozdrin authored
-
Jimmy Yang authored
rb://295 approved by Marko
-
Vasil Dimov authored
------------------------------------------------------------ revno: 3441 revision-id: marko.makela@oracle.com-20100504130917-qmvzbj3pgil2nuat parent: marko.makela@oracle.com-20100504125510-gemcfhj7mefrhalo committer: Marko M?kel? <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Tue 2010-05-04 16:09:17 +0300 message: fsp_init_file_page_low(): Zero out the page. (Bug #53306) modified: storage/innodb_plugin/fsp/fsp0fsp.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Ffsp%2Ffsp0fsp.c ------------------------------------------------------------
-
Vasil Dimov authored
------------------------------------------------------------ revno: 3439 revision-id: marko.makela@oracle.com-20100504124744-c1ivf5tm90nv7lc1 parent: marko.makela@oracle.com-20100504105546-4ew7a77e9uhxmhho committer: Marko M?kel? <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Tue 2010-05-04 15:47:44 +0300 message: Add Valgrind checks to catch uninitialized writes to data files. buf_flush_insert_into_flush_list(), buf_flush_insert_sorted_into_flush_list(), buf_flush_post_to_doublewrite_buf(): Check that the page is initialized. modified: storage/innodb_plugin/buf/buf0flu.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Fbuf%2Fbuf0flu.c ------------------------------------------------------------
-
Vasil Dimov authored
------------------------------------------------------------ revno: 3438 revision-id: marko.makela@oracle.com-20100504105546-4ew7a77e9uhxmhho parent: marko.makela@oracle.com-20100504093128-44v6glupe1dsh0ug committer: Marko M?kel? <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Tue 2010-05-04 13:55:46 +0300 message: Remove UNIV_BTR_AVOID_COPY. It was broken because btr_attach_half_pages() would get the block, new_block in the wrong order. Fixing that would have complicated the function even further for this marginal case. modified: storage/innodb_plugin/ChangeLog 2425@16c675df-0fcb-4bc9-8058-dcc011a37293:branches%2Fzip%2FChangeLog storage/innodb_plugin/btr/btr0btr.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Fbtr%2Fbtr0btr.c storage/innodb_plugin/include/univ.i 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Finclude%2Funiv.i ------------------------------------------------------------
-
Vasil Dimov authored
------------------------------------------------------------ revno: 3437 revision-id: marko.makela@oracle.com-20100504093128-44v6glupe1dsh0ug parent: marko.makela@oracle.com-20100503122859-k73bl51re93o0mt4 committer: Marko M?kel? <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Tue 2010-05-04 12:31:28 +0300 message: btr_page_split_and_insert(): Correct the fix of Bug #52964. When split_rec==NULL, choose the correct node pointer key (first_rec). modified: storage/innodb_plugin/btr/btr0btr.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Fbtr%2Fbtr0btr.c ------------------------------------------------------------
-
Alexander Nozdrin authored
-
Vasil Dimov authored
Add the missing parameter to mutex_create().
-
Vasil Dimov authored
Remove analyze_mutex_key now that this mutex does not exist.
-
Vasil Dimov authored
------------------------------------------------------------ revno: 3436 revision-id: marko.makela@oracle.com-20100503122859-k73bl51re93o0mt4 parent: vasil.dimov@oracle.com-20100430100236-9ncldjxpi14ec7el committer: Marko M?kel? <marko.makela@oracle.com> branch nick: 5.1-innodb timestamp: Mon 2010-05-03 15:28:59 +0300 message: buf_zip_decompress(): Allow BUF_NO_CHECKSUM_MAGIC as the stamped checksum. buf_page_get_gen(): Assert that buf_zip_decompress() succeeds. Callers are not prepared for a NULL return value. (Bug #53248) modified: storage/innodb_plugin/ChangeLog 2425@16c675df-0fcb-4bc9-8058-dcc011a37293:branches%2Fzip%2FChangeLog storage/innodb_plugin/buf/buf0buf.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Fbuf%2Fbuf0buf.c ------------------------------------------------------------
-
Vasil Dimov authored
------------------------------------------------------------ revno: 3433 revision-id: mmakela@bk-internal.mysql.com-20100429133750-7ggyepb4erfg8eqe parent: mmakela@bk-internal.mysql.com-20100429132945-l4gm15tsmkjm24kv committer: Marko Makela <mmakela@bk-internal.mysql.com> branch nick: mysql-5.1-innodb timestamp: Thu 2010-04-29 15:37:50 +0200 message: recv_sys_init(), recv_sys_empty_hash(): Shrink recv_sys->addr_hash. recv_addr_t: Turn space,page_no into bitfields to save space on 64-bit. This addresses Bug #53122 in the InnoDB Plugin. modified: storage/innodb_plugin/ChangeLog 2425@16c675df-0fcb-4bc9-8058-dcc011a37293:branches%2Fzip%2FChangeLog storage/innodb_plugin/include/log0recv.h 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Finclude%2Flog0recv.h storage/innodb_plugin/log/log0recv.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Flog%2Flog0recv.c ------------------------------------------------------------
-
Vasil Dimov authored
------------------------------------------------------------ revno: 3431 revision-id: mmakela@bk-internal.mysql.com-20100429132743-8rjjgoqbvddr2i5x parent: vasil.dimov@oracle.com-20100428103452-6btsq4xv6v1etb5b committer: Marko Makela <mmakela@bk-internal.mysql.com> branch nick: mysql-5.1-innodb timestamp: Thu 2010-04-29 15:27:43 +0200 message: Reduce the next-key locking of READ UNCOMMITTED to match that of READ COMMITTED in the InnoDB Plugin. (Bug #48607) modified: storage/innodb_plugin/ChangeLog 2425@16c675df-0fcb-4bc9-8058-dcc011a37293:branches%2Fzip%2FChangeLog storage/innodb_plugin/handler/ha_innodb.cc 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Fhandler%2Fha_innodb.cc storage/innodb_plugin/lock/lock0lock.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Flock%2Flock0lock.c storage/innodb_plugin/row/row0mysql.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Frow%2Frow0mysql.c storage/innodb_plugin/row/row0sel.c 2@16c675df-0fcb-4bc9-8058-dcc011a37293:trunk%2Frow%2Frow0sel.c ------------------------------------------------------------
-