Commit graph

264 commits

Author SHA1 Message Date
monty@mysql.com
cab35adf7e Review of new pushed code (XA & other)
Portability fixes and cleanups
Fixed setting of 'res' in mysql_execute_command()
2005-02-21 14:47:57 +02:00
ramil@mysql.com
8cf2b82f94 After review fixes 2005-02-02 15:52:19 +04:00
ramil@mysql.com
7f68f132fd Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/home/ram/work/4.1.b4802
2005-02-02 15:06:36 +04:00
serg@serg.mylan
c76405a7ee merged 2005-01-24 19:41:42 +01:00
serg@serg.mylan
67ba2e367a fixes/cleanups according to Coverity report 2005-01-24 15:48:25 +01:00
monty@mysql.com
d35140a851 First stage of table definition cache
Split TABLE to TABLE and TABLE_SHARE (TABLE_SHARE is still allocated as part of table, will be fixed soon)
Created Field::make_field() and made Field_num::make_field() to call this
Added 'TABLE_SHARE->db' that points to database name; Changed all usage of table_cache_key as database name to use this instead
Changed field->table_name to point to pointer to alias. This allows us to change alias for a table by just updating one pointer.
Renamed TABLE_SHARE->real_name to table_name
Renamed TABLE->table_name to alias
Renamed TABLE_LIST->real_name to table_name
2005-01-06 13:00:13 +02:00
monty@mishka.local
4f4bbfc279 Merge with 4.1 2004-12-22 13:54:39 +02:00
gluh@gluh.mysql.r18.ru
2e912bbbe8 Don't display 'usage' privilege in TABLE_PRIVILEGES if we have columns privileges
mysqldump skips information_schema db
'use' now can use information_schema db
changed value of column 'Null' to 'NO' if column is not nullable
2004-12-10 12:07:11 +03:00
dlenev@mysql.com
611abb882b Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/dlenev/src/mysql-4.1-bg6765
2004-12-09 14:14:03 +03:00
monty@mysql.com
01e4740f4c Ensure that we free memory used with --order-by-primary (in mysqldump)
Simple, non critical, fix to mysql_fix_privilege_tables
2004-12-09 12:47:20 +02:00
dlenev@mysql.com
62a6d9749b Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/dlenev/src/mysql-4.1-bg6765
2004-12-09 13:33:12 +03:00
dlenev@brandersnatch.localdomain
4b0882e0a6 Fix for bug #6765 "Implicit access to time zone description
tables requires privileges for them if some table or column level grants
present" (with after-review fixes).

We should set SELECT_ACL for implicitly opened tables in 
my_tz_check_n_skip_implicit_tables() to be able to bypass privilege
checking in check_grant(). Also we should exclude those tables from
privilege checking in multi-update.
2004-12-09 13:31:46 +03:00
monty@mysql.com
0de4777187 Merge with 4.1 2004-12-06 11:38:56 +02:00
mats@mysql.com
2bbdf2403d Bug#6391 (binlog-do-db rules ignored)
CREATE DATABASE statement used the current database instead of the
  database created when checking conditions for replication.
  CREATE/DROP/ALTER DATABASE statements are now replicated based on
  the manipulated database.
2004-12-03 12:13:51 +01:00
bell@sanja.is.com.ua
7210195f1e now my_printf_error is not better then my_error, but my_error call is shorter
used only one implementation of format parser of (printf)
fixed multistatement
2004-11-13 19:35:51 +02:00
bell@sanja.is.com.ua
1555469b64 merge 2004-11-12 15:36:31 +02:00
bell@sanja.is.com.ua
31f7811183 post-review fixes 2004-11-12 14:34:00 +02:00
brian@avenger.(none)
f05daf02ba Resolved merge from 4.1 -> 5.0 (mainly Guilhem's work with mysqldump) 2004-11-11 18:58:57 -08:00
acurtis@pcgem.rdg.cyberkinetica.com
dd1cd8aa46 Bug#6031 - To drop database you have to execute DROP DATABASE command twice.
DROP DATABASE failed because of file ext not in TYPELIB of known extensions.
  General solution - construct a TYPELIB at runtime instead of a static list.
2004-11-10 15:07:11 +00:00
monty@mysql.com
1087186657 Merge with 4.1 to get new thd->mem_root handling 2004-11-08 17:53:32 +02:00
monty@mysql.com
b903a129e2 Simpler arena swapping code
Now thd->mem_root is a pointer to thd->main_mem_root and THR_MALLOC is a pointer to thd->mem_root.
This gives us the following benefits:
- Allow us to easily detect if arena has already been swapped before (this fixes a bug in setup_conds() where arena was swaped twice in some cases)
- Faster swaps of arenas (as we don't have to copy the whole MEM_ROOT)
- We don't anymore have to call my_pthread_setspecific_ptr(THR_MALLOC,...) to change where memory is alloced. Now it's enough to set thd->mem_root
2004-11-08 01:13:54 +02:00
monty@mysql.com
afbe601302 merge with 4.1 2004-10-29 19:26:52 +03:00
bar@mysql.com
217d83a69f Bug#6202: ENUMs are not case sensitive even if declared BINARY 2004-10-25 17:51:26 +05:00
ram@gw.mysql.r18.ru
61c7767786 A fix (bug #4802 prompt in mysql client shows wrong database after dropping default db). 2004-10-21 17:02:24 +05:00
bell@sanja.is.com.ua
4714a6e744 errors without code removed
net_printf/send_error calls replaced by my_error family functions
-1/1 (sent/unsent) error reporting removed
(WL#2133)
2004-10-20 04:04:37 +03:00
serg@serg.mylan
323e683cbf merged 2004-09-07 21:30:28 +02:00
guilhem@mysql.com
168e4c9c6b when we update thd->db in replication, it's safer to update thd->db_length too.
This does not fix any known bug, but is still a good idea.
2004-09-07 14:57:54 +02:00
monty@mysql.com
31122efde7 Merge with 4.1
(Includes merge of arena code in 4.1 and 5.0)
2004-09-06 15:14:10 +03:00
bell@sanja.is.com.ua
99f92a5cab removing archive of .frm-s added (BUG#4821) 2004-08-25 14:57:57 +03:00
serg@serg.mylan
949348f576 after merge fix 2004-08-20 22:54:42 +02:00
serg@serg.mylan
050bf6a89f merged 2004-08-20 21:56:29 +02:00
guilhem@mysql.com
5db56a106b Making FLUSH TABLES WITH READ LOCK block COMMITs of existing transactions,
in a deadlock-free manner. This splits locking the global read lock in two steps.
This fixes a consequence of this bug, known as:
BUG#4953 'mysqldump --master-data may report incorrect binlog position if using InnoDB'
And a test.
2004-08-20 16:35:23 +02:00
miguel@hegel.txg.br
da9fe0e6e2 Removed non-used variable 2004-08-17 12:20:01 -03:00
bar@mysql.com
7f58bb793e A small fix to understand 4.1.0 format. 2004-07-27 18:43:40 +05:00
pem@mysql.com
d1c454a6f4 Post-merge fix. 2004-07-23 18:54:01 +02:00
bar@mysql.com
0f298f02db sql_db.cc:
mysqld crashes on CREATE TABLE in a database with corrupted db.opt file.
  Bug#4646
2004-07-23 17:11:45 +05:00
serg@serg.mylan
8d080cbcfa manual merge 2004-07-20 15:34:57 +02:00
konstantin@mysql.com
c9656ba551 Compilation failure on Windows fixed. 2004-07-19 15:12:23 -07:00
miguel@hegel.txg
b3b598d19c Fixes for bug #4571 (Windows compabilities) 2004-07-16 03:47:17 -03:00
bell@sanja.is.com.ua
9336d36cf8 VIEW
two TABLE_LIST copy eliminated
2004-07-16 01:15:55 +03:00
monty@mysql.com
31fe2837f9 Merge with 4.1 2004-07-12 08:20:24 +03:00
monty@mysql.com
fa7f63d46d After merge fixes 2004-07-12 07:43:38 +03:00
vva@eagle.mysql.r18.ru
34857ee664 manual merge
charged sql/sql_db.cc only
(
changed length in mysql_create_db to path_len
so as it was calculated in the first unpack_dirname
in my previous fix for Bug #4378
'"create database IF NOT EXISTS thing" returns an error'
)
2004-07-09 21:06:32 +05:00
vva@eagle.mysql.r18.ru
6782982254 added an optimization in mysql_create_db (sql_db.cc)
as after effect of fix for Bug #4378 
'"create database IF NOT EXISTS thing" returns an error' 

(avoided an unpack_dirname and 
 changed strcat into strmake)
2004-07-09 20:39:50 +05:00
monty@mysql.com
c1032fe9eb Cleanup of db option cacheing
Some bug fixes to last pushed code
2004-07-09 10:55:16 +03:00
vva@eagle.mysql.r18.ru
051a5461cc fixed Bug #4378 "create database IF NOT EXISTS thing" returns an error 2004-07-08 21:25:17 +05:00
monty@mysql.com
949de54454 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1
2004-07-08 15:45:56 +03:00
monty@mysql.com
db7efa2780 New handler::index_flags() definition to make it easy to check the full used key and a specific key part.
Added key part to optimize_range() to fix problems when using fields in key parts.
2004-07-08 15:45:25 +03:00
bar@mysql.com
a5025f4ca6 WL#807 Optimize loading database options in load_db_opt
also known as
BUG#2326 Charset of table is determined by charset of db only if "USE db;"
2004-07-08 15:03:01 +05:00
monty@mysql.com
1e31199995 Merge with 4.1.3-beta 2004-07-07 11:29:39 +03:00
guilhem@mysql.com
2b20e84ff8 Making DROP TABLE IF EXISTS, DROP DATABASE IF EXISTS, DELETE FROM, UPDATE be logged to
binlog even if they changed nothing, and a test for this.
This is useful when users use these commands to clean up their master and slave by issuing
one command on master (assume master and slave have slightly different data for some
reason and you want to clean up both).
Note that I have not changed multi-table DELETE and multi-table UPDATE because their
error-reporting mechanism is more complicated.
2004-06-09 16:07:01 +02:00
serg@serg.mylan
2e1ded2fe1 backport wild_compare fix from 4.1 - bug#3924 2004-05-29 17:52:20 +02:00
pem@mysql.com
71eddc362e Merging 4.1 to 5.0. 2004-05-26 17:04:45 +02:00
hf@deer.(none)
7afbe31db4 Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-4.1
into deer.(none):/home/hf/work/mysql-4.1.3691
2004-05-24 14:49:47 +05:00
hf@deer.(none)
098d8dd01f Fix for bug #3691 (libmysqld reports error 2 on CREATE DATABASE
but database is created)
handling of CREATE DATABASE errors changed
2004-05-24 12:23:52 +05:00
dlenev@brandersnatch.localdomain
c095ce828e Fix for bug which caused grant.test fail on darwin7.3. We were converting db and table
names to lower case using latin1 instead of utf-8 in sql_acl.cc if lower_case_table_names 
was on. Also replaced in other such places system_charset_info with files_charset_info
for consistency.
2004-05-22 23:41:58 +04:00
heikki@hundin.mysql.fi
02f51ccf2d Many files:
Fix remaining cases of Bug #3596: fix possible races caused by an obsolete value of thd->query_length in SHOW PROCESSLIST and SHOW INNODB STATUS; this fix depends on the fact that thd->query is always set to NULL before setting it to point to a new query
2004-05-14 16:48:56 +03:00
pem@mysql.com
bf45960eef Merge 4.1 -> 5.0 2004-05-07 18:52:06 +02:00
monty@mysql.com
d21d49a32a Merge with 4.0.19 2004-05-05 17:05:24 +03:00
serg@serg.mylan
4fcff3d2f1 don't rely on readdir() returning . and .. first 2004-05-04 14:36:23 +02:00
monty@mishka.local
21fd1d270e Merge with 4.0 2004-04-26 15:53:31 +03:00
pem@mysql.com
dfd59e296e Merge 4.1 -> 5.0. 2004-04-07 19:07:44 +02:00
Sinisa@sinisa.nasamreza.org
2ff3f487aa A fix for the error message when database can not be dropped due to
the extra files being present.
2004-03-30 13:50:00 +03:00
bar@bar.intranet.mysql.r18.ru
699dafefa2 sql_db.cc:
More clear error message.
2004-03-29 11:05:27 +05:00
monty@mysql.com
447baa9011 After merge fixes + simple optimizations 2004-03-26 11:06:53 +02:00
pem@mysql.comhem.se
5476eb0709 WL#1366: Use the schema (db) associated with an SP.
Phase 4 (final): Remove associated stored procedures when a database is dropped.
2004-03-22 14:44:41 +01:00
bell@sanja.is.com.ua
bbb6642a66 aliases should be compared with my_strcasecmp (BUG#3251)
some db comparison code cleupup
removed compiler warnings
2004-03-22 15:43:13 +02:00
pem@mysql.comhem.se
13987057f6 WL#1366: Use the schema (db) associated with an SP.
Phase 3: Made qualified names work for functions as well.
2004-03-19 19:01:54 +01:00
serg@serg.mylan
13946359c6 DROP DATABASE now returns (affected_rows) number of tables dropped 2004-03-19 16:43:03 +01:00
serg@serg.mylan
47747685a3 Merge bk-internal:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
2004-03-18 11:04:36 +01:00
serg@serg.mylan
1c658417b1 make DROP DATABASE to behave as documented in the manual - to report number of files deleted 2004-03-18 11:03:24 +01: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
monty@mysql.com
e9e9ce659e Fixes to newly pushed code 2004-03-12 15:56:28 +02:00
vva@eagle.mysql.r18.ru
158770e356 Merge vvagin@bk-internal.mysql.com:/home/bk/mysql-4.0
into eagle.mysql.r18.ru:/home/vva/work/BUG_2985/mysql-4.0
2004-03-12 17:56:27 +04:00
pem@mysql.comhem.se
6c6bbba007 WL#1366: Use the schema (db) associated with an SP.
Phase 2: Make SPs belong to a DB, and use qualified names.
  As a side effect, using USE in an SP is no longer allowed.
  (It just doesn't work otherwise.)
2004-03-11 17:18:59 +01: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
vva@eagle.mysql.r18.ru
29bc7b03a0 fixed Bug #2985
"Table truncated when creating another table name with Spaces"
added to check_db_name, check_table_name and check_column_name
test for end space
2004-03-05 22:13:33 +04:00
monty@mysql.com
8f093d0fb3 Portability fixes 2004-03-05 19:49:50 +02:00
monty@mysql.com
f8b4732a5e Safety fixes (strnmov -> strmake) 2004-02-20 00:26:05 +02:00
monty@mysql.com
f43093ec0e After merge fixes
Added more DBUG statements
Ensure that we are comparing end space with BINARY strings
Use 'any_db' instead of '' to mean any database. (For HANDLER command)
Only strip ' ' when comparing CHAR, not other space-like characters (like \t)
2004-02-16 10:03:25 +02:00
monty@mysql.com
ce14578909 Merge with 4.0.18 2004-02-11 00:06:46 +01:00
pem@mysql.com
c8585f3283 Merge 4.1 into 5.0. 2004-02-10 18:44:02 +01:00
monty@mysql.com
7df839e757 Added testing of pthread_key_delete (to fix compile problem on SCO) (Bug #2461)
DROP DATABASE now assumes RAID directories are in hex. (Bug #2627)
Don't increment 'select_full_range' and similar statistics for EXPLAIN queries. (Bug #2506)
Test in configure if pthread_key_delete() exists (to fix compile problem on SCO) (Bug #2461)
2004-02-05 09:12:23 +01:00
serg@serg.mylan
f0f9e0d7d7 SHOW CREATE DATABASE moved to sql_show.cc where it belongs
db name is printed with append_identifier for a proper quoting
2004-01-30 07:32:35 +01:00
bell@sanja.is.com.ua
41323e8b76 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-drop-4.1
2004-01-17 10:02:01 +02:00
guilhem@gbichot2
0b16ef245f Fix for BUG#2333 "ALTER DATABASE on inexistent database hangs the client":
mysql_alter_db() now returns -1 in case of error, so that mysql_execute_command()
calls send_error().
2004-01-12 21:05:41 +01:00
monty@mysql.com
c1dd070ba7 Some small portability fixes.
Added support for lower_case_table_names=2, which is to be used on case insensitive file systems.
This tells MySQL to preserve the used case of filenames and database names to make it esier to move files between cases sensitive can case insensitive file systems (like Windows and Linux)
2003-12-30 13:14:21 +02:00
pem@mysql.com
99e0ae85c7 Merge 4.1 to 5.0. 2003-12-19 18:03:27 +01:00
bar@bar.intranet.mysql.r18.ru
c49773237d Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-4.1
into bar.intranet.mysql.r18.ru:/usr/home/bar/mysql-4.1
2003-12-19 19:15:55 +04:00
bar@bar.intranet.mysql.r18.ru
5be2b8b11a Fix for Bug#2151:
"USE db"  affected the character set of further CREATE DATABASEs,
which should have not happened.
2003-12-19 19:12:11 +04:00
monty@mysql.com
e0cc6799ec Merge with 4.0.17 2003-12-17 17:35:34 +02:00
guilhem@mysql.com
db2d812d1b Fix for BUG#2083
"EE_ error codes (EE_DELETE, EE_WRITE) end up in the binlog, making slave stop".
The problem was that during execution of the command on the master, an error
can occur (for example, not space left on device, then mysqld waits and when
there is space it completes successfully: so finally it worked but the error
EE_WRITE remains in thd->net.last_errno and thd->net.last_error).
To know if finally the command succeeded, we test the 'error' variable in
every place, and if it shows no failure we reset thd->net.last_err* using
the function THD::clear_error() which is backported from 4.1.
A new test to see if now only real errors get to the binlog (note: the test
uses "rm").

Also a bit of memory free/alloc saving in log_event.cc (do not free the whole
mem_root after every query in the slave SQL thread: we can keep the initial
block of it; which will be freed when the thread terminates).
2003-12-16 11:10:50 +01:00
bell@sanja.is.com.ua
ccb07a4fbb fixed length of current database name if it is dropped (BUG#1986) 2003-12-04 23:57:10 +02:00
pem@mysql.com
6e717133c5 Merge 4.1 to 5.0 2003-12-01 16:14:40 +01:00
monty@mysql.com
d08945498e Fixed memory leak with RAID tables
Fixed tests for RAID tables
Detect uninitialized mutexes on lock and destroy
2003-11-21 14:41:57 +02:00
monty@mysql.com
7c6113a39f Merge key cache structures to one
Fixed compiler warnings (IRIX C compiler and VC++)
2003-11-20 22:06:25 +02:00
pem@mysql.com
28a2c6a96b Merging 4.1->5.0. 2003-11-19 15:19:46 +01:00
monty@mashka.mysql.fi
c9ae785bc3 Delete duplicate error message names 2003-11-18 17:28:00 +02:00
monty@mashka.mysql.fi
e5d75fb984 merge 2003-11-18 13:51:48 +02:00