Commit graph

65734 commits

Author SHA1 Message Date
Vladislav Vaintroub
ea72880659 address review comments 2010-12-02 15:56:25 +01:00
Sergey Petrunya
1c7c67d584 MWL#121-125 DS-MRR improvements
- Address Monty's review feedback, part 6: rename "handler *h" variable in all
  DS-MRR classes to something else.
2010-12-02 16:21:52 +03:00
Sergey Petrunya
799a1b1615 Update .result file (checked) 2010-12-02 15:14:39 +03:00
Sergey Petrunya
017c751868 Merge 2010-12-02 14:22:20 +03:00
Sergey Petrunya
44be131cd3 MWL#121-125 DS-MRR improvements
- Address Monty's review feedback, part 5
2010-12-02 14:10:52 +03:00
unknown
d08e5cfad2 Fix problems seen in Buildbot:
- Make sure creation of t1 is replicated before trying to create trigger on it on slave
 - Use safe #ifdef for declaration as for definition to avoid warning about unused static function.
2010-12-02 09:48:30 +01:00
Vladislav Vaintroub
2f7a1564bb Adapt fix_vs_config_dir () for VS2010
MTR_VS_CONFIG is now determined by looking at parent directory 
of sql\*\mysqld.exe,  instead of looking at *\*\BuildLog.htm

Reason : VS2010 does not create BuildLog.htm, hence prior method did not work.
2010-12-01 23:28:47 +01:00
Vladislav Vaintroub
c87923dc2d Make maria 5.1 compilable on Visual Studio 2010 and remove Windows warnings
-  Remove all mentioning of /MAP /MAPINFO link options (does not work in VS2010).
     Remove map files from packaging.
  -  Fix warning about ETIMEDOUT being redefined.
  -  Fix  warning about FSP_EXTENT_SIZE in xtradb  (32/64 bit right shift mismatch)
  -  Silence warnings coming from  generated  code (flex/bison) in xtradb/innodb_plugin.
  -  Be nice to people without cygwin (me) and add win/configure-mariadb.bat with options suitable for quick compilation, e.g no embedded
2010-12-01 21:37:03 +01:00
Michael Widenius
1a2df3f4eb automatic merge with 5.1 2010-12-01 22:24:49 +02:00
Michael Widenius
863a493b4f Fixed compiler warnings
sql/debug_sync.cc:
  Initalize variable
storage/sphinx/Makefile.am:
  Ensure we compile with the -Wno-unused-parameter flag
2010-12-01 22:23:59 +02:00
Michael Widenius
41df9be0ff Automatic merge with 5.1 2010-12-01 22:18:53 +02:00
Michael Widenius
34fa79e9b1 Fixed failures in buildbot
mysql-test/suite/innodb_plugin/t/innodb_bug38231.test:
  Sometimes you get a timeout here; Disable the not fatal error message.
storage/xtradb/sync/sync0rw.c:
  Disable compiler warning
2010-12-01 22:18:03 +02:00
Michael Widenius
1e5061fe3b merge with 5.1 2010-11-30 23:11:03 +02:00
Sergey Petrunya
e7337563d7 Make suite/optimizer_unfixed_bugs/t/bug43617.test work with --ps-protocol
- dodge some bug in mysql-test-run that makes it to consider multiple 
  statements as one (most likely it doesn't understand quotes in /* comments */)
2010-11-30 12:49:11 +03:00
unknown
e46d0aead0 Bug#54201: "SET INSERT_ID" event must be ignored if corresponding event is ignored
An INSERT query log event is preceeded by an INSERT_ID intvar event if the
INSERT allocates a new auto_increment value. But if we ignore the INSERT
due to --replicate-ignore-table or similar, then the INSERT_ID event is
still executed, and the set value of INSERT_ID lingers around in the
slave sql thread THD object indefinitely until the next INSERT that
happens to need allocation of a new auto_increment value.

Normally this does not cause problems as such following INSERT would
normally come with its own INSERT_ID event. In this bug, the user had
a trigger on the slave which was missing on the master, and this
trigger had an INSERT which could be affected. In any case, it seems
better to not leave a stray INSERT_ID hanging around in the sql thread
THD indefinitely.

Note that events can also be skipped from apply_event_and_update_pos();
however it is not possible in that code to skip the INSERT without also
skipping the INSERT_ID event.
2010-11-30 10:47:08 +01:00
Michael Widenius
6f279f4014 Automatic merge with 5.1-release 2010-11-30 09:25:33 +02:00
Michael Widenius
ab5e4eefd5 Fixed some compiler warnings found when compiling for windows.
Changed rows_read and rows_sent status variables to be longlong (to avoid compiler warnings)


sql/item_func.cc:
  Fixed wrong usage of alias
sql/item_subselect.cc:
  Changed buffer size to ulonglong to be able detect buffers bigger than size_t
sql/item_subselect.h:
  Changed buffer size to ulonglong to be able detect buffers bigger than size_t
sql/multi_range_read.cc:
  Fixed compiler warning by using correct type for function argument
sql/mysqld.cc:
  Changed rows_read and rows_sent status variables to be longlong
sql/opt_subselect.h:
  Fixed compiler warning by using correct type for function argument
sql/sql_class.cc:
  Changed rows_read and rows_sent status variables to be longlong
sql/sql_class.h:
  Changed rows_read and rows_sent status variables to be longlong
  Changed max_nulls_in_row to uint as this is number of columns in row.
  This fixed some compiler warnings.
sql/sql_select.cc:
  Added casts to avoid compiler warnings
storage/heap/ha_heap.cc:
  Initilize different types separate
storage/oqgraph/ha_oqgraph.cc:
  Fixed argument to store(longlong) to avoid compiler warnings
2010-11-30 01:27:14 +02:00
Michael Widenius
d54f869f8c Fixed some compiler warnings
configure.in:
  Added comment
mysql-test/suite/innodb_plugin/t/innodb_bug56680.test:
  Disable test when run with valgrind as we get errors from buf_buddy_relocate() on work for this test.
  (Should probably be investigated as this may be an issue in xtradb, but probably harmless)
  Work is an amd-64 running openSUSE 1.11 and valgrind 3.4.1
mysys/charset.c:
  Remove static function if not used (to remove compiler warning)
storage/xtradb/srv/srv0srv.c:
  Added casts to get rid of compiler warnings
2010-11-30 01:14:34 +02:00
Hakan Kuecuekyilmaz
b9589e2ed7 Use three digits after the decimal point for better resolution and comparability of results. 2010-11-29 23:58:18 +01:00
Hakan Kuecuekyilmaz
0906d9e97f Use three digits after the decimal point for better resolution and comparability of results. 2010-11-29 23:56:27 +01:00
unknown
42187df61e Fix logical expression according to operation priority (also MS visual studio compiler warnings). 2010-11-29 22:02:33 +02:00
Sergey Petrunya
acb9ba8a4f Make suite/optimizer_unfixed_bugs/t/bug43618.test work in any timezone. 2010-11-29 22:13:16 +03:00
Sergey Petrunya
f2abf5f6b1 Make suite/optimizer_unfixed_bugs/t/bug43617.test work in any timezone. 2010-11-29 19:47:32 +03:00
Sergey Petrunya
d1afc20e13 Merge maria-5.3-mwl128 -> maria-5.2-mwl128-dsmrr-cpk 2010-11-29 19:00:32 +03:00
Sergey Petrunya
cee6e4565d Fix trivial error in previous push 2010-11-29 17:27:23 +03:00
unknown
2251320840 Auto-merge fix for LP BUG#611622 2010-11-29 13:50:56 +02:00
Michael Widenius
fde525de3d Automatic merge with 5.1-release 2010-11-29 11:55:57 +02:00
Michael Widenius
e68ff46653 Fixed compiler and gmake warnings
- Removed SCCS rule from Makefile.am
- Made dummy rule in sql_yacc.yy to get rid of compiler warning about not used label.
Don't use maintainer mode with valgrind (as we don't want to initialize all variables)

config/ac-macros/maintainer.m4:
  Don't use maintainer mode with valgrind (as we don't want to initialize all variables)
  Force initialization of variables when using -Werror (To get rid of compiler warnings)
configure.in:
  Don't use maintainer mode with valgrind (as we don't want to initialize all variables)
sql/sql_yacc.yy:
  Made dummy rule in sql_yacc.yy to get rid of compiler warning about not used label.
2010-11-29 11:27:52 +02:00
Sergey Petrunya
a6d47ab1d3 Fix buildbot failure: keep rowid_buf_elem_size to its original value, otherwise
subsequent asserts have the wrong meaning.
2010-11-28 23:55:08 +03:00
Michael Widenius
b0d186e006 Disable warning that comes 'occasionable' depending on if HAVING is executed or not. 2010-11-28 15:02:12 +02:00
Michael Widenius
b2beb40728 Automatic merge 2010-11-28 14:38:59 +02:00
Michael Widenius
7c56b08216 Added TRASH() to table->record[0] to find out if we access not initialzed data.
- Changed Cached_item_field not copy data for fields with NULL value
- In key_copy() and key_restore() don't copy data for fields with NULL value

Fixed code to avoid valgrind warnings
- Use c_ptr_safe instead of c_ptr()

Removed "QQ" from comments (QQ was ment to be used for internal comments that should be removed before pushing)
Fixed wrong alias used (from previous patch)


sql/event_db_repository.cc:
  Update testing if event table is valid (to avoid valgrind errors)
sql/ha_partition.cc:
  m_ordered_scan_ongoing was not initialized
  Reset null bits in record to avoid valgrind errors
sql/handler.h:
  Added flag if storage engine will write row verbatim and the row contains varchar or null fields
  (in which case we must clear the row to avoid valgrind warnings)
sql/item_buff.cc:
  Changed Cached_item_field not copy data for fields with NULL value
  (Optimization and avoids valgrind warnings)
sql/item_func.cc:
  c_ptr() -> c_ptr_safe()
sql/key.cc:
  In key_copy() and key_restore() don't copy data for fields with NULL value
sql/opt_range.cc:
  c_ptr() -> c_ptr_safe()
sql/sql_base.cc:
  Added TRASH() to table->record[0] to find out if we access not initialzed data.
  Initialize null_bytes to:
  - Get consistent tests
  - Ensure we don't get valgrind warnings for null fields (as we may only update a couple of bits in a byte)
sql/sql_class.cc:
  Removed "QQ" from comments
sql/sql_insert.cc:
  Initialize row to default values if we are using valgrind and row will be copied verbatim to disk in storage engine.
sql/sql_load.cc:
  QQ -> TODO
sql/sql_parse.cc:
  Removed old not used code marked QQ and withing "#ifdef REMOVED"
sql/sql_select.cc:
  QQ -> TODO
  Initialize some variables that was used uninitialized
  Added DBUG_ASSERT() to find out if thd was not properly initialized for sub queries
sql/sql_test.cc:
  Fixed format for printing to DBUG file
  Fixed wrong alias used (from previous patch)
sql/sql_trigger.h:
  QQ -> TODO
sql/table.cc:
  QQ -> TODO
storage/maria/ha_maria.cc:
  Mark table with HA_RECORD_MUST_BE_CLEAN_ON_WRITE, if row is written verbatim to disk and contains varchar or null fields.
storage/maria/ma_open.c:
  Added flags if table has varchar or null fields
storage/maria/maria_def.h:
  Added flags if table has varchar or null fields
storage/myisam/ha_myisam.cc:
  Mark table with HA_RECORD_MUST_BE_CLEAN_ON_WRITE, if row is written verbatim to disk and contains varchar or null fields.
storage/myisam/mi_open.c:
  Fixed memory overrun bug when using fulltext keys
storage/xtradb/row/row0sel.c:
  Removed initialization of null bits. (not needed anymore)
2010-11-27 17:29:52 +02:00
Michael Widenius
ab2f365116 Automatic merge with 5.3 (support of BIT keys in heap) 2010-11-27 17:23:48 +02:00
Michael Widenius
9ab4829bc6 Fixed compiler warnings and a compilation failure on windows
extra/libevent/event.c:
  Tried to fix compiler warning on windows
extra/libevent/evutil.h:
  Define __attribute__ for not gcc compilers
extra/libevent/kqueue.c:
  Fixed compiler warnings
extra/libevent/signal.c:
  Tried to fix compiler warning on windows
storage/pbxt/src/ha_pbxt.cc:
  Fixed compiler warning about "variable might be clobbered by longjmp"
storage/pbxt/src/table_xt.cc:
  Fixed compiler warnings (on windows)
storage/xtradb/handler/i_s.cc:
  Fixed compiler warning by invoking the correct store function.
2010-11-27 00:37:34 +02:00
Hakan Kuecuekyilmaz
b2e979d868 Use three digits after the decimal point for better resolution and comparability of results. 2010-11-26 18:36:34 +01:00
Michael Widenius
b8b3716ae0 Patch from Sergey Petrunya:
Fix post-merge failure in 5.1-merge 
- Let QUICK_RANGE_INTERSECT_SELECT not make assumption that HA_EXTRA_KEYREAD 
  scans do not touch parts of table->record[0] that refer to fields that are 
  not covered by the used index.
  This assumption is not true for XtraDB (e.g. grep row/row0sel.c for 
  "init null bytes with default values as they might be").
2010-11-26 17:18:51 +02:00
Sergey Petrunya
8604dc78e2 Fix trivial error 2010-11-26 15:45:46 +03:00
Sergey Petrunya
40822c8149 Fix buildbot failure 2010-11-26 00:30:39 +03:00
Michael Widenius
171260f37c Automatic merge with 5.1 2010-11-25 22:41:38 +02:00
Michael Widenius
40b7efb354 Fixed failing test cases
mysql-test/include/have_not_innodb_plugin.inc:
  Also detect if xtradb is installed
mysql-test/suite/innodb/t/innodb_bug56143.test:
  Disabled test case that doesn't work for innodb_plugin/xtradb.
mysql-test/suite/innodb_plugin/r/innodb_bug56632.result:
  Updated result (key_block_size is lower case in MariaDB, as all other options)
mysql-test/suite/pbxt/r/partition_hash.result:
  Updated results (after partition row count optimization changes)
mysql-test/suite/pbxt/r/partition_pruning.result:
  Updated results (after partition row count optimization changes)
mysql-test/suite/pbxt/r/partition_range.result:
  Updated results (after partition row count optimization changes)
mysql-test/suite/pbxt/r/subselect.result:
  Updated result after ROW() changes.
2010-11-25 20:55:52 +02:00
Michael Widenius
f900b65810 Merge of innodb_plugin for MySQL 5.1.53 with xtradb
Fixed compiler warnings in xtradb
Added back resetting of null bitmap but now in row_search_for_mysql()

storage/xtradb/row/row0sel.c:
  Added back resetting of null bitmap but now in row_search_for_mysql()
2010-11-25 15:11:37 +02:00
Sergey Petrunya
92442fc598 Merge MWL#121-125 DS-MRR improvements
- Address Monty's review feedback, part 4
2010-11-25 14:35:21 +03:00
Michael Widenius
721a6a6a6d A proper fix for bug #57688.
Introduced a new flag in the class Item. The flag is set
to 1 only for items that are used in GROUP BY lists of
queries with ROLLUP.
2010-11-25 13:19:01 +02:00
Michael Widenius
babdbbbfd2 Automatic merge with base 2010-11-25 12:10:02 +02:00
unknown
970b46b1dc Fix LP BUG#611622
Fix MySQL BUG#52344 - Subquery materialization: Assertion if subquery in on-clause of outer join

Original fix and comments from Oysten, adjusted for the different
subquery optimization in MariaDB.
"
Problem: If tables of an outer join are constant tables,
the associated on-clause will be evaluated in the optimization
phase. If the on-clause contains a query that is to be
executed with subquery materialization, this will not work
since the infrastructure for such execution is not yet set up.
      
Solution: Do not evaluate on-clause in optimization phase if
is_expensive() returns true for this clause.  This is how the
problem is currently avoided for where-clauses.  This works
because, Item_in_subselect::is_expensive_processor returns true
if query is to be executed with subquery materialization.
"
In addition, after MWL#89, in MariaDB if the IN-EXISTS strategy
is chosen, the in-to-exists predicates are insterted after
join_read_const_table() is called, resulting in evaluation of
the subquery without the in-to-exists predicates.
2010-11-25 11:43:23 +02:00
Michael Widenius
1a6373e8e2 Merge with MySQL 5.1.53
Open issues:
- A better fix for #57688; Igor is working on this
- Test failure in index_merge_innodb.test ; Igor promised to look at this
- Some Innodb tests fails (need to merge with latest xtradb) ; Kristian promised to look at this.
 - Failing tests: innodb_plugin.innodb_bug56143 innodb_plugin.innodb_bug56632 innodb_plugin.innodb_bug56680 innodb_plugin.innodb_bug57255 
- Werror is disabled;  Should be enabled after merge with xtradb.
2010-11-25 00:57:34 +02:00
unknown
0574bc894b Fix LP BUG#680058
Analysis:
The send_data method of the result sink class used to collect
data statistics about materialized subqueries incorrectly assumed
that duplicate rows are removed prior to calling send_data. As
a result the collected statistics was wrong, which resulted in
an incorrect maximal number of keys in the Ordered_key buffer.
  
Solution:
Try to insert each row into the materialized temp table before
collecting statistics, and if the insertion results in a duplicate
row, do not count the current row.
2010-11-25 00:34:50 +02:00
unknown
bf5140fb7b Fix test failure when the mysql-test/ directory is not writable. 2010-11-24 18:51:31 +01:00
unknown
b3ecd24523 Merge XtraDB from Percona-Server 5.1.52-11.6 into MariaDB 5.1
revid:oleg.tsarev@percona.com-20101118145125-wjhjrb5jwhi0g7sj
2010-11-24 14:04:38 +01:00
unknown
b0d3898dc8 Updated with changes from lp:percona-server/release-5.1.52-11 as of November 24, 2010
Merged: revid:oleg.tsarev@percona.com-20101118145125-wjhjrb5jwhi0g7sj
2010-11-24 13:04:12 +01:00