Commit graph

660 commits

Author SHA1 Message Date
serg@serg.mysql.com
1ced5948f0 low-level error messages cleanup 2003-01-28 17:42:08 +01:00
monty@mashka.mysql.fi
689578a099 Fixes for Netware
Call pthread_mutex_destroy() on not used mutex.
Changed comments in .h and .c files from // -> /* */
Added detection of mutex on which one didn't call pthread_mutex_destroy()
Fixed bug in create_tmp_field() which causes a memory overrun in queries that uses "ORDER BY constant_expression"
Added optimisation for ORDER BY NULL
2003-01-28 08:38:28 +02:00
heikki@hundin.mysql.fi
d62ef3a0d9 ha_innodb.cc:
Temporary fix to make the new client/server protocol to work: fetch all columns in an index, even if not needed by the SELECT statement; Monty has to fix the parser to tell InnoDB what to fetch
2003-01-24 04:47:06 +02:00
monty@mashka.mysql.fi
7436e9ec97 Merge 2003-01-21 21:28:51 +02:00
monty@mashka.mysql.fi
25c393a12e Portability fixes (for windows)
Some changes to the prepared statement protocol to make it easier to use and faster.
2003-01-21 21:07:59 +02:00
hf@deer.mysql.r18.ru
7d20900c6d Merge abotchkov@work.mysql.com:/home/bk/mysql-4.1
into deer.mysql.r18.ru:/home/hf/work/mysql-4.1.w1
2003-01-21 09:46:07 +04:00
heikki@hundin.mysql.fi
ff4ef4c4e7 ha_innodb.cc:
Convert TL_READ_NO_INSERT to TL_READ to allow concurrent inserts to the table in INSERT INTO ... SELECT ... FROM table
2003-01-21 00:38:55 +02:00
heikki@hundin.mysql.fi
a4a95cb217 ha_innodb.cc:
Remove the question of Monty about user_thd / NULL after a merge from 4.0 to 4.1, user_thd is the right value in 4.1
2003-01-20 23:39:28 +02:00
hf@deer.mysql.r18.ru
389680e04e Conflicts resolving 2003-01-20 18:59:45 +04:00
monty@mashka.mysql.fi
76f146a175 Merge with 4.0.9 2003-01-18 03:13:37 +02:00
heikki@hundin.mysql.fi
9a2afb60c7 ha_innodb.cc:
Had forgotten to change ha_innodb.cc to reflect that InnoDB now supports HA_READ_PREFIX_LAST
2003-01-17 00:50:27 +02:00
heikki@hundin.mysql.fi
01573f0d95 ha_innodb.cc:
Backport from 4.1: make sure change_active_index is only called with a properly initialized InnoDB table handle
2003-01-16 08:06:43 +02:00
heikki@hundin.mysql.fi
0efc57eed6 ha_innodb.cc:
Make SHOW INNODB STATUS aware when we are estimating index range size etc.
2003-01-16 07:15:55 +02:00
heikki@hundin.mysql.fi
c228dfacdf ha_innodb.cc:
Fix a typo
2003-01-16 01:07:08 +02:00
heikki@hundin.mysql.fi
d7cc9da9b6 ha_innodb.cc:
Fix a possible hang at the adaptive hash index latch if MySQL does query estimations also in the middle of a SELECT statement processing
2003-01-16 00:44:27 +02:00
hf@deer.mysql.r18.ru
96089e2b3a resolving conflicts 2003-01-15 13:15:35 +04:00
hf@deer.mysql.r18.ru
c59bff7c96 SCRUM
embedded library trimming
2003-01-15 12:11:44 +04:00
heikki@hundin.mysql.fi
63a656c55c ha_innodb.cc:
Added some assertions to make sure index_init is only called with a properly prepared InnoDB table handle
2003-01-13 23:25:55 +02:00
heikki@hundin.mysql.fi
8e6a4c6201 ut0mem.c, row0sel.c, row0mysql.c, ut0mem.h, row0sel.h, row0mysql.h:
Test allocation of memory beforehand if we are trying to return a > 2 MB BLOB; normally InnoDB asserts if memory allocation fails
ha_innodb.cc:
  Do not fetch all columns if change_active_index() is called during a query; a sum(a), max(a) query seemed to do that, doing unnecessary copying (the change actually made in the previous bk ci)
  Free BLOB heap of handle when MySQL calls some ::extra()'s
2003-01-12 23:58:56 +02:00
heikki@hundin.mysql.fi
c314981049 trx0trx.c:
Add diagnostic prints to determine why the 'queries inside InnoDB' might drift upwards
ha_innodb.cc:
  Add more print space to SHOW INNODB STATUS; remove possible memory leak in case there is an error
2003-01-12 22:31:16 +02:00
heikki@hundin.mysql.fi
b1b47e93b1 buf0buf.c, buf0buf.ic, buf0buf.h:
Reduce memory usage of the buffer headers
Many files:
  Merge InnoDB-4.1 with AWE support
2003-01-06 22:07:25 +02:00
monty@mashka.mysql.fi
07daf3169e Merge with 4.0.8 2003-01-03 00:04:33 +02:00
monty@mashka.mysql.fi
89a842de3c Merge work:/my/mysql-4.0 into mashka.mysql.fi:/home/my/mysql-4.0 2003-01-02 14:41:31 +02:00
heikki@hundin.mysql.fi
80f5621e4c ha_innodb.cc:
Fix bug: could not switch trx isolation back to REPEATABLE READ after switching it to some other level
2002-12-31 10:17:35 +02:00
monty@mashka.mysql.fi
3ca695ea0b Cut hostnames at HOSTNAME_LENGTH to avoid theoretical hostname overruns
Changed long packat handling to check for packets of length 0xffffff.
This does however break packet handling for older clients.
If you are using packets >= 16M then you need to upgrade client and server
after this patch.
2002-12-26 18:26:37 +02:00
monty@mashka.mysql.fi
f03bbd3fe2 Merge with 3.23:
Remove duplicate casedn_str() in mysql_change_db()
Fix for null handling in CASE
2002-12-21 10:56:40 +02:00
hf@deer.mysql.r18.ru
c1e69d2cca Merging 2002-12-16 18:58:55 +04:00
hf@deer.mysql.r18.ru
e3b3b68307 Big purge about embedded library (scrum) 2002-12-16 17:33:29 +04:00
bell@sanja.is.com.ua
3103bca9b2 merging 2002-12-11 19:53:57 +02:00
monty@mashka.mysql.fi
146814f2ea Merge with 3.23 2002-12-11 13:32:31 +02:00
monty@mashka.mysql.fi
d3eb993a27 rename of net_pkg.cc to protocol.cc
Class for sending data from server to client (Protocol)
This handles both the old ( <= 4.0 ) protocol and then new binary protocol that is used for prepared statements.
2002-12-11 09:17:51 +02:00
monty@mashka.mysql.fi
859b688476 Merge with 4.0.6 2002-12-05 19:38:42 +02:00
monty@mashka.mysql.fi
fc06433a69 Removed copying of parameters as this leads to memory leaks in embedded server.
Fixed 'not initialized' memory error.
2002-12-05 03:40:33 +02:00
heikki@hundin.mysql.fi
ded9245d98 ha_innodb.cc:
Make copies of all string-type start/up options in case C-sharp moves them around; remove the need to specify innodb_log_arch_dir in my.cnf, since it has no relevance anyway
2002-11-29 13:05:37 +02:00
monty@mashka.mysql.fi
dac6498f9b Merge with 4.0 2002-11-21 15:56:48 +02:00
heikki@hundin.mysql.fi
4b73222d5a row0mysql.c, row0mysql.h, ha_innodb.cc, sql_table.cc, handler.h:
Fix crash when InnoDB temp table is truncated + fix bug: do not X-lock rows under LOCK TABLES except if the table is temp
2002-11-19 16:27:26 +02:00
monty@mashka.mysql.fi
adfad220f4 Merge work:/my/mysql-4.0 into mashka.mysql.fi:/home/my/mysql-4.0 2002-11-16 21:58:09 +02:00
monty@mashka.mysql.fi
1a96948e81 Small improvement to alloc_root
Add support for LIMIT # OFFSET #
Changed lock handling:  Now all locks should be stored in TABLE_LIST instead of passed to functions.
Don't call query_cache_invalidate() twice in some cases
mysql_change_user() now clears states to be equal to close + connect.
Fixed a bug with multi-table-update and multi-table-delete when used with LOCK TABLES
Fixed a bug with replicate-do and UPDATE
2002-11-16 20:19:10 +02:00
heikki@hundin.mysql.fi
7e7027ae23 ha_innodb.cc:
Remove unintentionally pushed printf
2002-11-15 23:10:51 +02:00
heikki@hundin.mysql.fi
1079b93640 ha_innodb.cc:
Fix another bug introduced in 4.0.4 in AUTO_INCREMENT and deadlock or lock wait timeout
2002-11-15 22:59:16 +02:00
heikki@hundin.mysql.fi
be6e811f51 ha_innodb.cc:
Fix bug intoduced in 4.0.4 in REPLACE and AUTO_INCREMENT: if replace did an update, then auto-inc counter was left 1 too low
2002-11-15 18:46:23 +02:00
monty@mashka.mysql.fi
7a70332836 Portability fix when using -DBIG_TABLES 2002-11-14 12:21:36 +02:00
heikki@hundin.mysql.fi
648b50660b ha_innodb.cc:
Try to skip over corrupt records in SELECT if innodb_force_recovery > 0; print more page hex dumps in CHECK TABLE
2002-11-09 18:34:52 +02:00
monty@butch.
890b39bb68 merge 2002-11-07 12:49:01 +02:00
monty@butch.
a2bdf9265f Portability fixes for Fortre C++ 5.0 (on Sun) in 32 and 64 bit modes. 2002-11-07 03:54:00 +02:00
heikki@hundin.mysql.fi
db1693101b Many files:
Merge InnoDB-4.0.5b: minor improvements to foreign keys, more logical data dictionary lock
2002-11-06 00:41:27 +02:00
bell@sanja.is.com.ua
4307363079 new innodb query cache behaviour (recommit because of problem with 4.1 repository pushing)
fixed bug in quqry cache dbd transaction processing
2002-11-03 10:15:14 +02:00
heikki@hundin.mysql.fi
23657e8c33 srv0start.h, srv0start.c, ha_innodb.cc:
Add check that sizeof(trx_t) is the same in ha_inndob.cc and InnoDB compilation modules
2002-10-31 12:03:34 +02:00
heikki@hundin.mysql.fi
f51bc42cf5 ha_innodb.cc:
Fix bug: mysqld-debug-max failed standard test because a safe mutex size was seen as 24 bytes in the body of ha_innodb.cc, but 64 bytes in read0read.c
2002-10-31 11:32:42 +02:00
heikki@hundin.mysql.fi
ab12784d5f ha_innodb.cc:
Fix bug in MySQL-3.23 ORDER BY from a table with no PRIMARY KEY and where the user had added UNIQUE indexes with CREATE INDEX
2002-10-31 00:26:04 +02:00
heikki@hundin.mysql.fi
9153d88c6b Many files:
Merge InnoDB-4.0.5: new isolation levels READ COMMITTED and READ UNCOMMITTED now supported, selective deadlock resolution
mysqld.cc:
  Change MySQL default isolation level to REPEATABLE READ; note that InnoDB has always had that default, and BDB and MyISAM always run at SERIALIZABLE level anyway
2002-10-29 23:16:46 +02:00
bar@bar.mysql.r18.ru
95aef91521 BINARY charset is now used instead of binary_flag 2002-10-25 13:58:32 +05:00
monty@hundin.mysql.fi
3476dc8f9e Merge hundin.mysql.fi:/my/mysql-4.0 into hundin.mysql.fi:/my/mysql-4.1 2002-10-16 19:31:22 +03:00
monty@hundin.mysql.fi
fbf6ab4465 merge with 4.0.5 2002-10-16 19:30:24 +03:00
monty@hundin.mysql.fi
a54df74af0 Fixes after last merge.
Ignore changed keyblocks when on does DELETE FROM table_name;
2002-10-16 19:05:10 +03:00
monty@hundin.mysql.fi
67d3cd643b Merge with 3.23.54 2002-10-16 13:11:25 +03:00
monty@narttu.mysql.fi
3c7f6a9835 merge 2002-10-14 12:07:16 +03:00
bar@bar.mysql.r18.ru
50c391538a my_sortcmp -> my_strnncoll 2002-10-09 16:33:35 +05:00
monty@narttu.mysql.fi
da2abaf887 Portability fixes to be able to compile MySQL with VC++ 2002-10-08 22:28:24 +03:00
monty@mashka.mysql.fi
0f39457613 Merge with 4.0.4 2002-10-02 17:55:12 +03:00
monty@mashka.mysql.fi
d69250a969 Fixes and code cleanups after merge with 4.0.3
Warning handling and initial prepared statement handling (last not complete yet)
Changed a lot of functions that returned 0/1 to my_bool type.
GRANT handling now uses read/write locks instead of mutex
Change basic net functions to use THD instead of NET
(needed for 4.1 protocol)
Use my_sprintf instead of sprintf() + strlen()
Added alloc_query() to be able to chare query initialization code with
prepared statements.
Cleanup handling of SHOW COUNT(*) WARNINGS and SELECT LAST_INSERT_ID()

Note that the following test fails (will be fixed ASAP):
sub_select, union, rpl_rotate_logs and rpl_mystery22
2002-10-02 13:33:08 +03:00
heikki@hundin.mysql.fi
64c3498f82 ha_innodb.cc:
Fix an assertion in btr0pcur.c line 203 when an UPDATE is done inside LOCK TABLES
2002-09-26 14:50:25 +03:00
heikki@hundin.mysql.fi
cfff5b5025 ha_innodb.h, ha_innodb.cc:
Remove the flag HA_NOT_READ_PREFIX_LAST because ORDER BY orders wrong then; also remove the diagnostic print to avoid cluttering the error log
2002-09-25 20:35:12 +03:00
heikki@hundin.mysql.fi
b46d2ca192 ha_innodb.cc, ha_innodb.h:
Move to the right place the flag which bans use of HA_READ_PREFIX_LAST; add diagnostics and remove the assertion on line 2180 of ha_innodb.cc
2002-09-25 19:02:46 +03:00
monty@mashka.mysql.fi
efaaf0b4b8 Updated VC++ project files for 4.0.4
Only write short usage if one starts mysqldump without any options
Added query cache on windows
Added error message if one can't read privilege tables
2002-09-24 17:11:59 +03:00
heikki@hundin.mysql.fi
62b2b08717 row0ins.c, ha_innodb.cc:
Table hash key len in query cache also includes null char at end
2002-09-22 01:38:48 +03:00
heikki@hundin.mysql.fi
1f64f8d07d ha_innodb.cc:
Add return statement
2002-09-21 03:39:27 +03:00
heikki@hundin.mysql.fi
ef8b2fa85f ha_innodb.cc:
Fix typos in last push
  Fix typo
2002-09-21 03:15:54 +03:00
heikki@hundin.mysql.fi
cff9c1df1e ha_innodb.cc, ha_innodb.h:
Fix assertion when a temporary table is created and used inside LOCK TABLES
2002-09-20 23:26:21 +03:00
heikki@hundin.mysql.fi
9e493e91e9 Many files:
Modifications for query cache + trxs, fix of q.c.+ foreign keys
os0file.c:
  Use unbuffered i/o in Windows
2002-09-20 05:11:08 +03:00
monty@mashka.mysql.fi
c7b6854f70 Merge work:/my/mysql-4.0 into mashka.mysql.fi:/home/my/mysql-4.0 2002-09-16 15:56:55 +03:00
heikki@hundin.mysql.fi
34fe09f08f ha_innodb.h, ha_innodb.cc:
Reverted the change which allowed use of HA_READ_PREFIX_LAST in InnoDB
2002-09-15 02:23:53 +03:00
heikki@hundin.mysql.fi
65297c9c51 ha_innodb.cc:
Add some comments
ha_innodb.h:
  Remove the flag HA_NOT_READ_PREFIX_LAST from ha_innodb.h: InnoDB has supported this from the start, but not tested yet
2002-09-14 03:12:00 +03:00
monty@mashka.mysql.fi
8b7521eb7f Merge with 3.23.53 2002-09-11 14:49:38 +03:00
monty@mashka.mysql.fi
f3a186c905 Portability fixes.
Improve mysql-test to be more robust.
Fix that GRANT doesn't delete SSL options
Change innobase_flush_log_at_trx_commit to uint.
Don't rotate logs if we read a rotate log entry from the master.
2002-09-11 06:40:08 +03:00
monty@rescue.
b0e599629c Fixed typo in Heikkis last push. 2002-09-05 17:10:18 +03:00
heikki@work.mysql.com
a16f3360aa btr0btr.c Add more documentation about B-tree latching
ha_innodb.cc	Remove gaps in auto-inc in multi-row inserts, more space for foreign key listings in SHOW TABLE STATUS, move resetting of active_trx to amore logical place
dict0dict.h	Remove gaps from auto-inc sequence if errors in multi-row insert
dict0dict.c	Remove gaps from auto-inc sequence if errors in multi-row insert
2002-09-04 18:53:48 +02:00
heikki@work.mysql.com
516cc0bd61 ha_innodb.cc Test a new clone 2002-09-04 18:00:58 +02:00
serg@serg.mysql.com
b962da9aab merged 2002-08-31 23:38:10 +00:00
monty@narttu.mysql.fi
7134ffec21 Merge with 4.0.3
Some simple optimzations, more comments and indentation changes.
Add ` around database in 'use database' in binary log.
Moved max_error_count and max_warning_count to variables struct.
Removed SHOW_WARNS_COUNT and SHOW_ERRORS_COUNT calls.
Changed string functions to use character set of first string argument as default return characterset
(Each string function can change the above assumption if needed)
2002-08-30 12:40:40 +03:00
serg@serg.mysql.com
99a954f405 InnoDB support for HANDLER 2002-08-21 20:55:34 +00:00
monty@hundin.mysql.fi
c531b43272 merge with 3.23.52 2002-08-13 02:33:25 +03:00
monty@hundin.mysql.fi
ae1ec6e16a Changed SQL variable delay_key_write to an enum
able delay_key_write as default (as it was in 4.0.2)
2002-08-13 02:18:39 +03:00
monty@hundin.mysql.fi
454339b29c Fixes after last merge 2002-08-12 07:02:08 +03:00
monty@hundin.mysql.fi
3ef9d44edc merge with 3.23.52 2002-08-12 04:04:43 +03:00
monty@hundin.mysql.fi
c99c1fd384 Changed IF(expr, column, NULL) to take type from column
Fixed some windows portability problems and removed some compiler warnings
 Cleaned up QUOTE() function and fixed bug in \0 and \Z handling.
2002-08-12 03:33:46 +03:00
monty@hundin.mysql.fi
77296b3f67 Fix after merge
Updated WEEK() and DATE information in the manual.
2002-08-08 16:41:04 +03:00
monty@hundin.mysql.fi
087261482a merge with 3.23.52 2002-08-08 15:24:47 +03:00
monty@mashka.mysql.fi
2c4fa340cc Lots of code fixes to the replication code (especially the binary logging and index log file handling)
Fixed bugs in my last changeset that made MySQL hard to compile.
Added mutex around some data that could cause table cache corruptions when using OPTIMIZE TABLE / REPAIR TABLE or automatic repair of MyISAM tables.
Added mutex around some data in the slave start/stop code that could cause THD linked list corruptions
Extended my_chsize() to allow one to specify a filler character.
Extend vio_blocking to return the old state (This made some usage of this function much simpler)
Added testing for some functions that they caller have got the required mutexes before calling the function.
Use setrlimit() to ensure that we can write core file if one specifies --core-file.
Added --slave-compressed-protocol
Made 2 the minimum length for ft_min_word_len
Added variables foreign_key_checks & unique_checks.
Less logging from replication code (if not started with --log-warnings)
Changed that SHOW INNODB STATUS requre the SUPER privilege
More DBUG statements and a lot of new code comments
2002-08-08 03:12:02 +03:00
monty@mashka.mysql.fi
bc035c71f1 Merge with 3.23.51
Fixed wrong usage of sprintf() in ha_innodb.cc
2002-07-25 22:46:28 +03:00
monty@mashka.mysql.fi
dddc20d9d1 New SET syntax & system variables.
Made a some new buffers thread specific and changeable.
Resize of key_buffer.
AUTO_COMMIT -> AUTOCOMMIT
Fixed mutex bug in DROP DATABASE
Fixed bug when using auto_increment as second part of a key where first part could include NULL.
Split handler->extra() to extra() and extra_opt() to be able to support thread specific buffers.
Don't write message to error log when slave reconnects becasue of timeout.
Fixed possible update problem when using DELETE/UPDATE on small tables
(In some cases we used index even if table scanning would be better)
A lot of minior code cleanups
2002-07-23 18:31:22 +03:00
monty@hundin.mysql.fi
0d8e13979d Made keyread (key scanning) a key specific attribute.
This avoids using fulltext keys for table scanning.
This also reverts Sinisa's original fix for this problem.
2002-06-19 00:22:30 +03:00
monty@hundin.mysql.fi
4d7030606e Fixed problem with innodb_log_group_home_dir and SHOW VARIABLES 2002-06-17 15:07:46 +03:00
monty@hundin.mysql.fi
f0b28da6f9 merge with 4.0 2002-06-03 12:59:31 +03:00
monty@hundin.mysql.fi
544f95c451 merge with 3.23 2002-06-02 20:46:03 +03:00
heikki@hundin.mysql.fi
5106b63d38 ha_innodb.cc:
Reduce ibdata1 default size to 10M:autoextend
2002-04-22 11:58:38 +03:00
monty@hundin.mysql.fi
b5a145d872 merge 2002-04-13 15:34:39 +03:00
monty@tik.mysql.fi
b1b975bfba Fix core dump bug in innodb after merge from 3.23 2002-03-31 18:12:24 +03:00
monty@hundin.mysql.fi
6e4b213654 Fix after MERGE
Fixed use of unitialized key
2002-03-27 06:53:25 +02:00
monty@hundin.mysql.fi
2faee46284 merge (remove conflicting zip files) 2002-03-27 06:44:23 +02:00
monty@hundin.mysql.fi
727e507bca merge with 3.23.50 2002-03-27 01:56:10 +02:00
monty@hundin.mysql.fi
ce541b292a support for unsigned FLOAT/DOUBLE 2002-03-27 00:50:54 +02:00
heikki@hundin.mysql.fi
c017f76e73 ha_innodb.cc:
Change the default innodb_data_file_path to create a 16M file and define it as auto-extending
2002-03-21 19:52:13 +02:00
bar@gw.udmsearch.izhnet.ru
c60a29f0ee Hash now supports several charsets 2002-03-14 21:44:42 +04:00
bar@gw.udmsearch.izhnet.ru
b37ce8e769 New ctype functions/macros to support many charsets at a time 2002-03-12 21:37:58 +04:00
monty@hundin.mysql.fi
e070e9a01f merge with 3.23.49 2002-02-14 18:58:24 +02:00
monty@hundin.mysql.fi
4abd402b87 merge with 3.23.48 2002-02-11 13:48:59 +02:00
monty@hundin.mysql.fi
4000b036c0 Fixes for new getopt
Bug fix when using --no-deaults
Sets ref_length to right value (faster rnd_pos() handling in InnoDB).
Fixed problem with multi-table-delete and InnoDB
Fixed problem with truncate table, which required a COMMIT before.
Fixed multi-table-delete bug with InnoDB.
Remove not used index from EXPLAIN
2002-01-31 04:36:58 +02:00
monty@hundin.mysql.fi
79796e989f Merge from 3.23.48 tree 2002-01-30 16:37:47 +02:00
monty@tik.mysql.fi
7dd4eb71fe Added support of null keys in HEAP tables
Added ORDER BY optimization
2002-01-12 15:42:54 +02:00
Renamed from sql/ha_innobase.cc (Browse further)