Commit graph

152 commits

Author SHA1 Message Date
monty@narttu.mysql.fi
7a54334443 Merge with 4.0.13 2003-06-05 17:33:38 +03:00
heikki@hundin.mysql.fi
e09517e2ac ha_innodb.cc:
Revert a change to dict_mem_index_add_field which slipped prematurely into the bk tree
2003-06-05 16:06:38 +03:00
heikki@hundin.mysql.fi
c2e5f48412 ha_innodb.cc, handler.cc:
Fix the BDB crash in the previous push; to save CPU remove duplicate calls of commit in InnoDB
2003-06-05 15:58:23 +03:00
heikki@hundin.mysql.fi
b8e5b65f88 ha_innodb.cc:
Remove accidenatlly committed debug printfs when query cache is used
sql_update.cc, sql_load.cc, sql_insert.cc, sql_delete.cc:
  For the transactional query cache algorithm to work we must invalidate the query cache in INSERT/DELETE/UPDATE before writing to the binlog or calling ha_autocommit_... Note that binlog writing may also call commit. The crucial thing is that the transaction which modified data must not be committed BEFORE the query cache is invalidated.
2003-05-26 19:10:43 +03:00
monty@narttu.mysql.fi
dd2b7918cd Merge with 4.0.13 2003-05-19 16:35:49 +03:00
heikki@hundin.mysql.fi
35fd869e51 Many files:
Eliminate the LOCK_log bottleneck in group commit in binlogging: flush InnoDB log files only after it has been released
2003-05-03 02:29:40 +03:00
monty@mashka.mysql.fi
c137673711 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mashka.mysql.fi:/home/my/mysql-4.0
2003-04-27 22:12:38 +03:00
heikki@hundin.mysql.fi
a1861ddb22 trx0trx.h, trx0trx.c, ha_innodb.cc:
Remove code never actually used in IGNORE; InnoDB just rolls back the latest row insert or update on a duplicate key error and leaves it for MySQL to decide whether to ignore the error
2003-04-27 17:25:39 +03:00
monty@mashka.mysql.fi
8b20a878cc Merge with 3.23:
Set innobase_flush_log_at_trx_commit to 1 by default
Fix problem with timestamp on 64 bit systems
Reserve alarms for up to 10 slave threads
2003-04-26 21:10:13 +03:00
guilhem@mysql.com
050d5b5487 forgot to commit this one in cset 1.1561 (replication) 2003-04-25 12:31:51 +02:00
heikki@hundin.mysql.fi
a4281f59ed ha_innodb.cc:
When FLUSH LOGS is called, flush InnoDB logs to disk also in the case innodb_flush_log_at_trx_commit=0
2003-04-24 23:24:11 +03:00
heikki@hundin.mysql.fi
9a29732968 ha_innodb.h, ha_innodb.cc:
Make ANALYZE TABLE to update index cardinality and other statistics also for an InnoDB table; note that the estimates are based on 10 random dives, not on an exhaustive read of the table
2003-04-24 15:34:43 +03:00
monty@narttu.mysql.fi
b228f5ff10 merge 2003-04-24 00:36:48 +03:00
monty@narttu.mysql.fi
f6a43bd567 Fixes for valgrind
Added optimzation for clustered index
Fixed bug in UPDATE ... ORDER BY
Fixed handling of UPDATE ... LIMIT
2003-04-23 21:52:16 +03:00
heikki@hundin.mysql.fi
e1b68cf111 ha_innodb.cc:
Prevent crash if MySQL calls rnd_end WITOUT calling rnd_init first: only restore active_index if it the old value was pushed in rnd_init
  Initialize active_index to a sensible value: prevent crash if we restore it to the original value after an table scan
2003-04-18 22:06:10 +03:00
heikki@hundin.mysql.fi
b914d2e3cc ha_innodb.h, ha_innodb.cc:
Make InnoDB to restore old active_index value after a table scan: MySQL may assume that a scan does NOT change active_index; this partially fixes bug 241 of UPDATE ... ORDER BY ... but it still remains that MySQL actually ignores the ORDER BY for both MyISAM and InnoDB tables
log0recv.c:
  Use fflush to make sure report of a corrupt log record is printed to .err log before mysqld crashes
2003-04-18 18:42:43 +03:00
heikki@hundin.mysql.fi
3a77f47a04 ha_innodb.cc, row0sel.c, row0mysql.c, row0mysql.h:
Allow HANDLER PREV and NEXT also after positioning the cursor with a unique search on the primary key
2003-04-17 02:28:40 +03:00
bell@sanja.is.com.ua
5ea922aab0 merging 2003-04-16 20:35:29 +03:00
heikki@hundin.mysql.fi
f841b4ae23 Many files:
Merge InnoDB-4.0.13; DROP FOREIGN KEY now works
2003-04-16 16:45:01 +03:00
monty@narttu.mysql.fi
5dd970c335 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into narttu.mysql.fi:/my/mysql-4.1
2003-03-17 15:06:06 +02:00
bar@bar.mysql.r18.ru
caf31a0790 Preparing to client<->server autoconvert 2003-03-17 13:14:04 +04:00
monty@narttu.mysql.fi
a434bca704 Merge with 4.0 2003-03-16 19:17:54 +02:00
heikki@hundin.mysql.fi
bd14136331 ha_innodb.cc:
Fix bug: MySQL could erroneously return Empty set if InnoDB estimated index range size to 0 records though the range was not empty; MySQL also failed to do the next-key locking in the case of an empty index range
2003-03-13 23:09:25 +02:00
heikki@hundin.mysql.fi
404116fd1d ha_innodb.cc:
Add comment that Guilhem should check master_log_name, pending etc are right if the master log gets rotated
2003-03-04 19:14:37 +02:00
heikki@hundin.mysql.fi
14749b89bb ha_innodb.cc:
Remove (already commented out) code about storing the latest relay log pos info to InnoDB: we will probably use only the master log pos info when we restart a slave after a crash
2003-03-04 19:06:40 +02:00
heikki@hundin.mysql.fi
6ef0f4ad41 ha_innodb.h, ha_innodb.cc, handler.h, handler.cc, sql_class.cc:
Fix a hang on the adaptive hash S-latch if an application program uses mysql_use_result() and performs queries on two connections at the same time
2003-03-03 19:31:01 +02:00
monty@narttu.mysql.fi
0197fc78c9 Merge with 4.0 2003-02-27 03:49:26 +02:00
heikki@hundin.mysql.fi
18dbed8463 ha_innodb.cc:
Remove DEBUG_ASSERT if MySQL internally names a UNIQUE index as the PRIMARY KEY, but inside InnoDB there is no primary key for the table
2003-02-26 19:52:31 +02:00
heikki@hundin.mysql.fi
f407468649 ha_innodb.cc:
Add docs to store_lock()
2003-02-26 19:31:05 +02:00
heikki@hundin.mysql.fi
f749357a21 ha_innodb.cc:
InnoDB maps HA_READ_PREFIX_LAST_OR_PREV to PAGE_CUR_LE, but note that only complete-field prefixes of the kay value can be used as the search key
2003-02-18 20:36:16 +02:00
heikki@hundin.mysql.fi
ed6a85b422 ha_innodb.cc:
Add comment about how to modify InnoDB to deal with partial-field prefixes of key value in the future
2003-02-18 20:07:06 +02:00
heikki@hundin.mysql.fi
e690ea09f7 page0cur.c:
Prepare for 5.x where HA_READ_PREFIX_LAST may pass only a few first bytes of the last field in a key value
ha_innodb.cc:
  In 4.0 always assume HA_READ_PREFIX_LAST passes a complete-field prefix of a key value; LIKE queries use a padding trick
2003-02-18 19:43:41 +02:00
bell@sanja.is.com.ua
1de8a5996f Merge sanja.is.com.ua:/home/bell/mysql/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/work-qc-4.1
2003-02-18 16:28:31 +02:00
monty@mashka.mysql.fi
7388c5f161 merge 2003-02-08 01:12:58 +02:00
heikki@hundin.mysql.fi
7abed55936 ha_innodb.cc:
Clarify the meaning of HA_READ_PREFIX_LAST as a search flag. InnoDB assumed the meaning wrong.
2003-02-07 17:33:15 +02:00
monty@mashka.mysql.fi
b14b246d38 Merge with 4.0 to get fix for MIN/MAX 2003-02-07 16:38:37 +02:00
heikki@hundin.mysql.fi
bd8c8522dc ha_innodb.cc:
Since MySQL uses HA_READ_PREFIX_LAST in a wrong place, we make InnoDB to convert it to a right search condition
2003-02-07 13:28:18 +02:00
heikki@hundin.mysql.fi
a2de9c66f5 ha_innodb.cc:
Fix potential bug: if MySQL calls store_lock with the TL_IGNORE argument in the middle of query processing, then InnoDB select_lock_type could be reset to LOCK_NONE in a wrong place
2003-02-05 01:24:59 +02:00
monty@mashka.mysql.fi
023d6dd39b Merge with 4.0.11 2003-02-04 21:52:14 +02:00
serg@serg.mysql.com
45ed0a0841 Merge work:/home/bk/mysql-4.0
into serg.mysql.com:/usr/home/serg/Abk/mysql-4.0
2003-01-30 16:02:11 +01:00
heikki@hundin.mysql.fi
d2328365e0 ha_innodb.cc:
Cleanup of the previous bug fix: replace code is either SQLCOM_REPLACE or SQLCOM_REPLACE_SELECT
2003-01-29 02:19:00 +02:00
heikki@hundin.mysql.fi
2db574ea19 ha_innodb.cc:
Fix a bug REPLACE INTO t SELECT ... did not work if t has an auto-inc column
2003-01-29 00:31:56 +02:00
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