Commit graph

119 commits

Author SHA1 Message Date
heikki@hundin.mysql.fi
91f5c5e337 thr0loc.c, srv0start.c, srv0srv.c, srv0srv.h, os0thread.h, ha_innodb.cc:
Backport from 4.1: reduce InnoDB memory consumption if buf pool < 8 MB
2003-10-17 23:44:34 +03:00
Sinisa@sinisa.nasamreza.org
fb774125e8 item_func.h:
Fix for a bug with LEAST() in WHERE clause
ha_innodb.cc:
  Fix for a configure bug
multi_update.result, multi_update.test:
  Fix for the update with NULL's in the result set
sql_update.cc:
  Fix for the update with NULL's in the result set
   Fix for the update with NULL's in the result set
   Fix for the update with NULL's in the result set
2003-08-20 15:33:21 +03:00
heikki@hundin.mysql.fi
f8a767b5d5 ha_innodb.cc:
Prevent the user from creating InnoDB tables with > 1000 columns
2003-07-08 20:51:45 +03:00
heikki@hundin.mysql.fi
0abd1539fa ha_innodb.cc:
Since the mysql interactive client or some other phase in communication cuts > 64 kB strings to very short, restrict the output of SHOW INNODB STATUS to at most 60 kB
2003-07-03 22:48:13 +03:00
heikki@hundin.mysql.fi
2a1f87ff72 Many files:
Remove potential starvation of a full log buffer flush: only flush up to the lsn which was the largest at the time when we requested the full log buffer flush
os0sync.h, os0sync.c:
  Fix a bug in os_event on Unix: even though we signaled the event, some threads could continue waiting if the event became nonsignaled quickly again; this made group commit less efficient than it should be
2003-07-03 21:25:55 +03:00
heikki@hundin.mysql.fi
6ae8ff3cc8 ha_innodb.cc:
Cleanup
2003-07-02 02:01:11 +03:00
heikki@hundin.mysql.fi
f67308f612 ha_innodb.cc:
Remove still some potential hangs over the btr0sea.c semaphore
2003-07-02 01:57:40 +03:00
heikki@hundin.mysql.fi
19da94db0e ha_innodb.cc:
Fix a possible hang over the btr0sea.c latch
2003-07-01 23:52:59 +03:00
monty@narttu.mysql.fi
eeee8f78c9 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into narttu.mysql.fi:/my/mysql-4.0
2003-06-23 13:04:21 +03:00
monty@narttu.mysql.fi
9791f47eee Added analyze as alias for optimize 2003-06-23 13:03:04 +03:00
heikki@hundin.mysql.fi
e2efb08c50 dict0dict.h, dict0dict.c, ha_innodb.cc:
In ORDER BY MySQL seems to set the key read flag also in the case where the primary key contains only a prefix of a column - not the whole column; to prevent potential bugs retrieve the whole column if the index contains a prefix of it
2003-06-22 16:20:06 +03:00
heikki@hundin.mysql.fi
29796e6240 row0mysql.c, dict0dict.ic:
Cleanup
ha_innodb.cc, data0type.h:
  Make sure non-latin1 users can downgrade from 4.0.14 to an earlier version if they have not created DATA_BLOB column prefix indexes
2003-06-16 00:39:46 +03:00
heikki@hundin.mysql.fi
95ffe2d0ca handler.h, ha_innodb.h, ha_innodb.cc:
Cleanup; remove compiler warning on Windows
2003-06-15 23:23:04 +03:00
heikki@hundin.mysql.fi
4da7f485b7 Many files:
Merge InnoDB-4.0.14: SAVEPOINT now implemented; InnoDB now accepts also column prefix keys; crashing bug in ON UPDATE CASCADE fixed; page checksum formula fixed
2003-06-15 01:04:28 +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
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
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
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
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
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
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
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
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
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
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
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