Commit graph

398 commits

Author SHA1 Message Date
dlenev@brandersnatch.localdomain
f49d4f5350 Fix for bug #4508 "CONVERT_TZ() function with new time zone as param crashes server".
Instead of trying to open time zone tables during calculation of CONVERT_TZ() function
or setting of @@time_zone variable we should open and lock them with the rest of 
statement's table (so we should add them to global table list) and after that use such 
pre-opened tables for loading info about time zones.
2004-08-10 12:42:31 +04:00
serg@serg.mylan
dec992d8fb hang in dummy natural join (no common columns) Bug #4807 2004-08-02 11:12:11 +02:00
serg@serg.mylan
3a17ab4551 auto_value_on_zero bug test 2004-07-30 09:47:56 +02:00
monty@mysql.com
b1d08ba2b4 Merge with 4.0 to get the latest bug patches to 4.1 2004-06-25 20:13:05 +03:00
ingo@mysql.com
18cd61d0d0 bug#3565 - HANDLER and FLUSH TABLE/TABLES deadlock.
Redesigned the handler close functions so that they are usable
at different places where waiting for closing tables is done.
2004-06-24 15:06:56 +02:00
dlenev@brandersnatch.localdomain
09ba29e539 WL#1264 "Per-thread time zone support infrastructure".
Added basic per-thread time zone functionality (based on public
domain elsie-code). Now user can select current time zone
(from the list of time zones described in system tables).
All NOW-like functions honor this time zone, values of TIMESTAMP
type are interpreted as values in this time zone, so now
our TIMESTAMP type behaves similar to Oracle's TIMESTAMP WITH
LOCAL TIME ZONE (or proper PostgresSQL type).
  
WL#1266 "CONVERT_TZ() - basic time with time zone conversion 
function".
  
Fixed problems described in Bug #2336 (Different number of warnings 
when inserting bad datetime as string or as number). This required
reworking of datetime realted warning hadling (they now generated 
at Field object level not in conversion functions).
  
Optimization: Now Field class descendants use table->in_use member
instead of current_thd macro.
2004-06-18 10:11:31 +04:00
bell@sanja.is.com.ua
be642b9bcd EXISTS(SELECT * ...)
close table before opening in optimize
2004-06-10 21:33:15 +03:00
serg@serg.mylan
2e1ded2fe1 backport wild_compare fix from 4.1 - bug#3924 2004-05-29 17:52:20 +02:00
serg@serg.mylan
bc71d98a03 bug#3681 - order by, distinct, refer to aliased field by name
check for field_name (not only for name) in find_item_in_list, to be compatible with item->eq() that is done later
2004-05-17 11:04:12 +02:00
bell@sanja.is.com.ua
712d379b5e check of item name presence in find_item_in_list (Bug #3752) 2004-05-14 18:55:24 +03:00
monty@mysql.com
d21d49a32a Merge with 4.0.19 2004-05-05 17:05:24 +03:00
monty@mysql.com
7e3cf5958c Fixed crashing bug with alter table when table was in use (Bug #3643)
We didn't use 'only index' for tables of type 'const'. (Bug #3497)
2004-05-05 12:31:17 +03:00
serg@serg.mylan
4fcff3d2f1 don't rely on readdir() returning . and .. first 2004-05-04 14:36:23 +02:00
magnus@neptunus.(none)
7c2c408cb8 Added NDB storage engine 2004-04-15 09:14:14 +02:00
serg@serg.mylan
1c0d4c4a46 merged 2004-04-07 17:14:38 +02:00
serg@serg.mylan
6ebf869b40 merged 2004-04-07 16:20:46 +02:00
ingo@mysql.com
4de7e18b81 Hand-resolved auto merge 2004-04-07 14:56:24 +02:00
bell@sanja.is.com.ua
61fd95d168 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-ps3-4.1
2004-04-07 15:23:05 +03:00
bell@sanja.is.com.ua
560a9f66d3 after review changes 2004-04-07 13:25:24 +03:00
serg@serg.mylan
e8eda8129f ::reset(), HA_FAST_KEY_READ, disable_indexes(), enable_indexes(), start_bulk_insert(), end_bulk_insert()
Field::val_str simplification, comment
2004-04-06 21:35:26 +02:00
monty@mysql.com
49330f61da Fixed warnings from valgrind (not a bug)
Don't add -debug to server version if MYSQL_SERVER_PREFIX is used
Indentation cleanups
2004-04-06 12:13:43 +03:00
bell@sanja.is.com.ua
1e4af935c1 removed old way to prevent using stack tables for caching Items in PS
fixed error code in union test
2004-04-04 03:05:44 +03:00
bell@sanja.is.com.ua
b30c28d85d for Item_param we have to have value set instead of fave item fixed (BUG#3353)
fixed outer joins
test of different joins included
2004-04-03 17:23:41 +03:00
bell@sanja.is.com.ua
c31f3cf1d2 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-on-4.1
2004-04-03 11:28:20 +03:00
bell@sanja.is.com.ua
2f4d2a0e38 fixed brocken of client_test
fixed aggregate functions in PS (BUG#3360)
2004-04-03 11:13:51 +03:00
dlenev@jabberwock.localdomain
f6bff2e6c6 WL#1266 "Separate auto-set logic from TIMESTAMP type."
Final version of patch.

Adds support for specifying of DEFAULT NOW() and/or ON UPDATE NOW()
clauses for TIMESTAMP field definition.
Current implementation allows only one such field per table and
uses several unireg types for storing info about this properties of
field. It should be replaced with better implementation when new
.frm format is introduced.
2004-04-02 10:12:53 +04:00
bell@sanja.is.com.ua
5568155e04 fix for table/field caching mechanism
save moving ON/USING tables conditions to WHERE clause (BUG#2794)
2004-04-01 03:00:38 +03:00
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