1
0
mirror of https://github.com/MariaDB/server.git synced 2025-05-05 16:59:35 +03:00

1133 Commits

Author SHA1 Message Date
dlenev@brandersnatch.localdomain
ad7e09dec4 More after-merge fixes for patch fixing bug #2050 2004-04-01 00:19:30 +04:00
dlenev@brandersnatch.localdomain
f38e0a935d Merge of fix for bug #2050 and bug #3307 2004-03-31 22:17:10 +04:00
dlenev@brandersnatch.localdomain
4122188cc2 Fix for Bug #3307 "FLUSH TABLES sometimes breaks prepared statement
table resolution".
Added members to Item_ident for storing original db, table and field
names since those that set later from Field have shorter life-time 
than required by prep. stmt. So we need to restore original names in 
Item_ident::cleanup(). Also now using special construnctor for creation
of Item_field from Field object that ensures that table and field name 
have big enough life-time.

"Fix" for bug #2050 "10 to 1 performance drop with server 4.1.1"
Clean ups in implementation of caching of field number in table.
Added caching of table in which field is found in find_field_in_tables().
2004-03-31 21:25:55 +04:00
monty@mysql.com
ddafa2cc16 simple optimzation
Portability fixes
2004-03-31 03:32:38 +03:00
ingo@mysql.com
85ec87a094 Worklog#1563 - Support of on-line CREATE/DROP INDEX.
This is to enable table handlers to implement online create/drop index.
It consists of some parts:
- New default handler methods in handler.h
- Split of mysql_alter_table. It decides if only one kind of
  alteration is to be done (e.g. only create indexes or only drop
  indexes etc.) It then calls the specialized new handler method if
  the handler implements it. Otherwise it calls real_alter_table.
- The parser sets flags for each alter operation detected in a
  command. These are used by mysql_alter_table for the decision.
- mysql_prepare_table is pulled out of mysql_create_table. This is
  also used by mysql_create_index to prepare the key structure array
  for the handler. It is also used by mysql_create_index and
  mysql_drop_index to prepare a call to mysql_create_frm.
- mysql_create_frm is pulled out of rea_create_table for use by
  mysql_create_index and mysql_drop_index after the index is
  created/dropped.
Thanks to Antony who supplied most of the changes.
2004-03-30 19:22:14 +02:00
ram@gw.mysql.r18.ru
3bfbe6e0dd resolving conflicts 2004-03-30 16:04:08 +05:00
ram@gw.mysql.r18.ru
fffe1e8424 An improvement of
ChangeSet
  1.1707 04/03/19 12:36:55 ram@gw.mysql.r18.ru +4 -0
  Fix for the bug #2976: NATURAL JOIN produces duplicate columns.
2004-03-30 15:54:26 +05:00
monty@mysql.com
e6882bbfd8 Disable INSERT DELAYED for embedded library 2004-03-29 17:57:07 +03:00
dlenev@brandersnatch.localdomain
9e28b7698d "Fix" for BUG #2050 "10 to 1 performance drop with server 4.1.1".
Actually it is not a bug but right behavior observed as pefomance 
degradation after we have forced Item_field::fix_fields() to 
re-execute each time when we are executing prep stmt.

This patch implements small optimization which heals this bad 
behavior. We are caching field position in TABLE::field array in
Item's member and are using this position for speeding up field
lookups in fix_fields() in case of its re-execution.
2004-03-28 04:11:54 +04:00
bell@sanja.is.com.ua
a0f629385f Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-4.1
2004-03-26 16:19:45 +02:00
bell@sanja.is.com.ua
0f0239fde1 typo in comment fixed 2004-03-26 15:08:06 +02:00
monty@mysql.com
e0e0314d60 Merge with 4.0 2004-03-25 23:29:45 +02:00
monty@mysql.com
3b34a6a2dd Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1
2004-03-25 22:18:31 +02:00
monty@mysql.com
1448199bd7 Cleanups & safety fixes 2004-03-25 22:11:22 +02:00
bell@sanja.is.com.ua
aa3f28722c fixed function name in a comment 2004-03-24 11:54:58 +02:00
guilhem@mysql.com
d89f148de6 The automatic DROP TEMPORARY TABLE is now DROP TEMPORARY TABLE IF EXISTS,
this is better in this case:
- imagine user1 has created a temp table
- imagine user2 does FLUSH TABLES WITH READ LOCK, then takes a backup,
then RESET MASTER then UNLOCK TABLES, like mysqldump --first-slave
- then in the binlog you will finally have the DROP TEMPORARY TABLE,
but not the CREATE TEMPORARY TABLE, so when you later restore with
mysqlbinlog|mysql, mysql will complain that table does not exist.
Replication was already protected of this (it processes DROP TEMPORARY
TABLE as if there was a IF EXISTS), now I add it directly to the query
for mysqlbinlog|mysql to work.
2004-03-20 15:49:17 +01:00
bell@sanja.is.com.ua
d095d4753e after review changes 2004-03-20 13:36:26 +02:00
ram@gw.mysql.r18.ru
fd01314cc8 Fix for the bug #2976: NATURAL JOIN produces duplicate columns.
Improvement natural join code in the setup_conds().
2004-03-19 12:36:55 +04:00
bell@sanja.is.com.ua
613104ad25 merge 2004-03-18 15:21:06 +02:00
bell@sanja.is.com.ua
2b45b53066 DBUG_ASSERT(fixed == 1); added to val*
small optimisation in signed_literal
2004-03-18 15:14:36 +02:00
monty@mysql.com
53c810cda4 merge fixes (use old code) 2004-03-18 00:16:04 +02:00
monty@mysql.com
f34a642d6e after merge fixes 2004-03-18 00:09:13 +02:00
bell@sanja.is.com.ua
8035ce40ec DBUG_ASSERT(fixed == 0) added to fix_fields() 2004-03-17 14:26:26 +02:00
monty@mysql.com
44667503b7 After merge fixes 2004-03-17 10:30:40 +02:00
monty@mysql.com
350b433569 merge with 4.0 2004-03-16 22:41:30 +02:00
hf@deer.(none)
2011d717cb Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-4.1
into deer.(none):/home/hf/work/mysql-4.1.233
2004-03-16 13:27:25 +04:00
hf@deer.(none)
ceaac59c42 Fix for #233 (the second one) 2004-03-16 13:26:37 +04:00
monty@mysql.com
e27960a44e Ensure that install_test_db.sh script works with both 'make install' and 'make_binary_distribution' layouts
Abort if we can't allocate memory for table cache
Fix bug with multi-update-tables and BDB tables.
2004-03-12 01:10:22 +02:00
monty@mysql.com
4ee44751d9 Fixed memory leak in DROP DATABASE when using RAID tables (Bug #2882) 2004-03-10 13:46:11 +02:00
bell@sanja.is.com.ua
7e48a0f610 merge 2004-03-09 12:52:25 +02:00
guilhem@mysql.com
9beae2895f Fix for BUG#3063 "Don't mark an auto DROP TEMP TABLE as 'killed' in the binlog";
even if the thread was killed, we write the DROP with error_code=0.
This will remove unneeded stops on slave, and will lose nothing:
if a real update was killed, this real update will be logged with the
nonzero error code and will cause the stop on slave.
2004-03-04 15:44:24 +01:00
guilhem@mysql.com
5afaf4eaaa Complement to
ChangeSet 1.1616.23.1
Fix for BUG#1858 "SQL-Thread stops working when using optimize table".
A test for this.
2004-02-22 11:22:51 +01:00
monty@mashka.mysql.fi
1ae05760ac Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mashka.mysql.fi:/home/my/mysql-4.1
2004-02-22 11:01:28 +02:00
monty@mashka.mysql.fi
e1bc99c131 After merge fixes
Fixed wrong test of database name (affected optimization of ORDER BY)
2004-02-22 08:09:32 +02:00
bell@sanja.is.com.ua
8a442c4e0d after review fix 2004-02-20 15:37:45 +02:00
bell@sanja.is.com.ua
14b9fa3588 revision of fix_fields() calls (BUG2838) 2004-02-18 01:08:52 +02:00
bell@sanja.is.com.ua
a66b398eb8 merge 2004-02-17 11:12:55 +02:00
bell@sanja.is.com.ua
f4d1ee971b merge 2004-02-17 01:52:33 +02:00
bell@sanja.is.com.ua
3f86f10a57 ulternative bugfix for BUG#2508 and fix for BUG#2809 - every table has its own TABLE structure 2004-02-17 01:14:51 +02:00
bell@sanja.is.com.ua
f20b775c63 PS fixed to be compatible with derived tables (BUG#2641) 2004-02-12 18:50:00 +02:00
bell@sanja.is.com.ua
272bd74abb memory leacks in PS with subqueries fixed (adddition to fix of BUG#2462) 2004-02-12 03:10:26 +02:00
monty@mysql.com
ce14578909 Merge with 4.0.18 2004-02-11 00:06:46 +01:00
bell@sanja.is.com.ua
74a9ca1991 ufter revview fix (BUG#2120) 2004-02-09 14:44:03 +02:00
monty@mysql.com
268521a61d Give error if locked table is used twice in query. This fixes strange error message when doing LOCK TABLES t1 WRITE; INSERT TABLE t1 SELECT * from t1 (Bug #2296) 2004-02-03 09:46:48 +01:00
bell@sanja.is.com.ua
bd259f54c9 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-derived2-4.1
2004-02-01 15:31:30 +02:00
bell@sanja.is.com.ua
2a9cd37cd6 now all tables of query are locked in one place (including derived tables)
fixed BUG#2120 and other problem with EXPLAINing derived tables
2004-02-01 15:30:32 +02:00
guilhem@mysql.com
e71325caf9 Fix for BUG#2477 "Slave stop with error after master reboot if use HEAP tables":
when we open the HEAP table for the first time since server restart,
in hp_open(), we set a flag to propagate this info to the handler level
which then writes a DELETE FROM this_heap_table to the binlog.
It is not a perfect solution for the bug, because between the server start and 
the first open of the table, the slave still had old data in his table so
a SELECT on the slave may show wrong content. But if there is a --init-file
to populate the HEAP table on master as startup, then this is a safe fix
(I'll put a note about init-file in the HEAP section of the manual).
2004-01-30 00:05:34 +01:00
serg@serg.mylan
c4326bc68e better fix BUG#2361: ALTER TABLE ... DROP PRIMARY KEY drops a non-primary key 2004-01-28 18:35:52 +01:00
bell@sanja.is.com.ua
e5fa5585f0 removed droping field->query_id for reinitialization tables for subquery.
(BUG#2089)
2004-01-03 00:12:07 +02:00
pem@mysql.com
12187684ca Merging lex-pointer change from 4.1 to 5.0. 2003-12-19 20:13:48 +01:00