Commit graph

29 commits

Author SHA1 Message Date
svoj@mysql.com/june.mysql.com
591712f53f BUG#25048 - ERROR 126 : Incorrect key file for table '.XXXX.MYI'; try to
repair it

Multi-table delete that is optimized with QUICK_RANGE reports table
corruption.

DELETE statement must not use KEYREAD optimization, and sets
table->no_keyread to 1. This was ignored in QUICK_RANGE optimization.

With this fix QUICK_RANGE optimization honors table->no_keyread
value and does not enable KEYREAD when it is requested.
2006-12-26 17:47:30 +04:00
svoj@april.(none)
44f167ee1d BUG#20256 - LOCK WRITE - MyISAM
Only MyISAM tables locked with LOCK TABLES ... WRITE were affected.

A query that is optimized with index_merge doesn't reflect rows
inserted within LOCK TABLES.

MyISAM doesn't flush a state within LOCK TABLES. index_merge
optimization creates a copy of the handler, which thus gets
outdated MyISAM state.

New handler->clone() method is introduced to fix this problem.
For non-MyISAM storage engines it allocates a handler and opens
it with ha_open(). For MyISAM it additionally copies MyISAM state
pointer to cloned handler.
2006-09-12 18:25:35 +05:00
sergefp@mysql.com
f95b5b0a5d BUG#17314: Can't use index_merge/intersection for MERGE tables
1. Fix index access costs for MERGE tables, set block_size=myisam_block_size/#underlying_tables 
   instead of 0 which it was before.
2. Make index scans on MERGE table to return records in (key_tuple, merge_table_rowid) order, 
   instead of just (key_tuple) order. This makes an index scan on MERGE table to be truly a ROR-scan
   which is a requirement for index_merge union/intersection.
2006-02-11 21:51:43 +03:00
sergefp@mysql.com
e40759e370 BUG#16166, "Can't use index_merge with FORCE INDEX": adjust the heurstics check to take into
account that "FORCE INDEX" disables full table scans, and not range/index_merge scans.
(with post-review fixes)
2006-01-12 10:48:27 +03:00
sergefp@mysql.com
5fd19ea864 Fix for BUG#10804: allow differences in rows field in EXPLAIN output 2005-06-20 11:05:38 +02:00
monty@mishka.local
2d25da2a4b concurrent-insert can now be set to 2 for concurrent inserts when there is holes in the data file
myisam_max_extra_sort_file_size is depricated
Ensure that myisam_data_pointer_size is honoured when creating new MyISAM files
Changed default value of myisam_data_pointer_size from 4 to 6 to get rid of 'table-is-full' errors
2005-05-13 12:08:08 +03:00
sergefp@mysql.com
9eca8dced6 Adjust test results for BUG#7634: The result of EXPLAIN is different if OS doesn't support file sizes > 2G 2005-02-02 07:51:43 +03:00
sergefp@mysql.com
b572374c0b Remove display of join buffer size, test fails when someone changes the minimum 2004-12-31 15:11:07 +03:00
monty@mysql.com
d71c030587 After merge fixes 2004-12-31 00:44:00 +02:00
sergefp@mysql.com
e6a7386c12 Fix for BUG#4177:
* Make index merge quick selects code allow perform several scans.
 * Delay additional handler objects creation till row retrieval is started.
2004-11-21 11:51:19 +03:00
igor@rurik.mysql.com
4c8e391718 table.h, sql_select.h:
Added the code processing on expressions for applying
  multiple equalities.
sql_select.cc:
  Post-merge fixes for Item_equal patch.
  Added the code processing on expressions for applying
  multiple equalities.
Many files:
  Post-merge fixes for Item_equal patch.
item_cmpfunc.cc:
  Post-merge fixes for Item_equal patch.
  Fixed a problem when an equality field=const cannot be applied to
  the predicate P(field,c) for constant propagation as a conversion
  of field is needed.
item.h, item.cc:
  Fixed a problem when an equality field=const cannot be applied to
  the predicate P(field,c) for constant propagation as a conversion
  of field is needed.
2004-10-19 14:12:55 -07:00
igor@rurik.mysql.com
71f6ab7a09 Merge for Item_equal. 2004-10-09 10:34:13 -07:00
monty@mysql.com
f2829d0386 After merge fixes of merge with 4.1 that included the new arena code.
Fixed (together with Guilhem) bugs in mysqlbinlog regarding --offset
Prefix addresses with 0x for easier comparisons of debug logs
Fixed problem where MySQL choosed index-read even if there would be a much better range on the same index
This fix changed some 'index' queries to 'range' queries in the test suite
Don't create 'dummy' WHERE clause for trivial WHERE clauses where we can remove the WHERE clause.
This fix removed of a lot of 'Using where' notes in the test suite.
Give NOTE instead of WARNING if table/function doesn't exists when using DROP IF EXISTS
Give NOTE instead of WARNING for safe field-type conversions
2004-09-09 06:59:26 +03:00
sergefp@mysql.com
ee0a516ccd Manual merge 2004-06-14 11:18:56 +04:00
pem@mysql.comhem.se
12b65b31b8 Post-merge fixes. 2004-06-07 12:08:13 +02:00
sergefp@mysql.com
5843eec521 Manual merge 2004-05-29 20:55:46 +04:00
sergefp@mysql.com
dff98a8ef7 * New index_merge EXPLAIN output format
* Fixed a problem with wrong query results for partially covering keys in ROR-index_merge
 * ROR-intersection retrieval plan choice algorithm now uses less disk IO
   - and properly processes clustered PK range scans 
 * Fixed several minor range optimizer problems
 * Added more comments
 * Code cleanup
2004-05-29 02:04:01 +04:00
pem@mysql.comhem.se
ec92106535 Post-merge fixes.
Note: One sp.test still fails (prime), and rpl_server_id2.test fails (will be fixed by guilhem ASAP).
2004-05-14 16:00:57 +02:00
igor@rurik.mysql.com
0dcc255b9b Merge rurik.mysql.com:/home/igor/mysql-5.0
into rurik.mysql.com:/home/igor/dev/mysql-5.0-0
2004-03-25 12:20:33 -08:00
sergefp@mysql.com
3d2794ae9a Fix for Bug#3183 2004-03-15 23:11:58 +03:00
igor@rurik.mysql.com
c236568ac9 Auto Merge 2003-12-23 02:24:12 -08:00
sergefp@mysql.com
a8456e6801 Numerous small fixes to index_merge read time estimates code 2003-12-20 00:53:14 +03:00
sergefp@mysql.com
67c6d5113c Precise read time estimates for index_merge/Unique 2003-12-18 06:08:00 +03:00
sergefp@mysql.com
60563049e9 Merge mysql.com:/home/psergey/mysql-5.0-latest-pull
into mysql.com:/home/psergey/mysql-5.0-imerge-unique
2003-12-09 23:41:25 +03:00
igor@rurik.mysql.com
580b878562 The output of explain command for some queries has changed
after introducing Item_equal.
2003-12-02 16:41:53 -08:00
igor@rurik.mysql.com
37ad3d2f2d index_merge.result:
Fixed inconsistency of values of used_tables_cache
  and const_item_cache for Item_func_isnull objects (bug #1990).
2003-12-01 16:15:25 -08:00
sergefp@mysql.com
ae15947360 Fix for bug 1974 2003-11-28 00:31:15 +03:00
sergefp@mysql.com
3d32afd736 Post-merge fixes for index_merge/Unique/5.0 2003-11-24 20:54:57 +03:00
sergefp@mysql.com
4016048d81 logging_ok:
Logging to logging@openlogging.org accepted
sql_union.cc, sql_select.cc, opt_range.h, opt_range.cc, opt_ft.h:
  Post-merge fixes
Many files:
  new file
2003-11-20 23:27:11 +03:00