Commit graph

109 commits

Author SHA1 Message Date
monty@mashka.mysql.fi
2263e3e51f Merge with 4.0.14 2003-08-11 22:44:43 +03:00
heikki@hundin.mysql.fi
c1b62170a7 srv0srv.c, os0file.c, log0recv.h, log0log.h, fil0fil.h, fsp0fsp.c, fil0fil.c:
Merge
trx0trx.c:
  Print more info about a trx in SHOW INNODB status; try to find the bug reported by Plaxo
buf0buf.c:
  Check that page log sequence numbers are not in the future
log0recv.c, log0log.c:
  Fixed a bug: if you used big BLOBs, and your log files were relatively small, InnoDB could in a big BLOB operation temporarily write over the log produced AFTER the latest checkpoint. If InnoDB would crash at that moment, then the crash recovery would fail, because InnoDB would not be able to scan the log even up to the latest checkpoint. Starting from this version, InnoDB tries to ensure the latest checkpoint is young enough. If that is not possible, InnoDB prints a warning to the .err log
2003-07-25 22:26:39 +03:00
heikki@hundin.mysql.fi
38595b1f28 srv0srv.c:
Put back a 50 millisecond sleep in too high concurrency situations which I removed in the previous push; count also such sleeping threads to the InnoDB queue in SHOW INNODB STATUS
2003-07-13 18:50:43 +03:00
heikki@hundin.mysql.fi
b46400b23e srv0srv.c:
Fix a benign bug introduced in 4.0.14: InnoDB could complain 'Error: trying to declare trx to enter InnoDB' if several threads tried to init the auto-inc counter for the same table at the same time; in theory, the bug could even lead to a hang of the server, but that shuld be extremely improbable
2003-07-13 17:18:06 +03:00
heikki@hundin.mysql.fi
2340cff77a srv0start.c, srv0srv.h, os0file.h, os0file.c:
Allow also O_DIRECT as innodb_flush_method; it only affects writing to data files
2003-07-13 00:17:02 +03:00
heikki@hundin.mysql.fi
e387dac042 srv0srv.c:
In background loop run purge to completion before doing other background operations: it does not make sense to flush buffer pool pages if they are soon modified again by purge
trx0purge.c:
  Increase purge_sys->n_pages_handled for every undo log we purge, even if that log would be only a hundred bytes: that way we get the purge batches of 20 pages to set a fresh purge view (limit) more often, and we can reduce the number of old row versions purge has to look at when it decides if it can remove some delete-marked index record
2003-07-06 16:17:02 +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
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
monty@narttu.mysql.fi
7a54334443 Merge with 4.0.13 2003-06-05 17:33:38 +03:00
monty@narttu.mysql.fi
40109c574a Merge with 4.0.13 2003-06-04 19:21:51 +03:00
heikki@hundin.mysql.fi
e8e98d05f9 os0thread.h, os0sync.ic, os0sync.h, os0thread.c, os0sync.c, os0file.c:
Release all event semaphores at shutdown also in Windows
srv0start.c, srv0srv.c:
  make test sometimes failed because lock timeout thread exited without decrementing the InnoDB thread counter
2003-06-02 13:11:20 +03:00
heikki@hundin.mysql.fi
42671d18ae Many files:
Free all OS sync primitives and allocated memory in InnoDB shutdown
2003-05-31 03:12:03 +03:00
heikki@hundin.mysql.fi
cfda0a16ff srv0start.c:
Cleanup
2003-05-30 23:00:37 +03:00
heikki@hundin.mysql.fi
d1759530d3 Many files:
Exit all threads created by innoDB at shutdown
2003-05-30 22:44:37 +03:00
monty@narttu.mysql.fi
dd2b7918cd Merge with 4.0.13 2003-05-19 16:35:49 +03:00
heikki@hundin.mysql.fi
6ba4c68728 srv0start.c:
Better instructions for the user if adding of new ibdata files fails
2003-05-18 21:46:19 +03:00
heikki@hundin.mysql.fi
9ec42178e9 srv0start.c, trx0sys.c:
Let InnoDB to skip writing of pages from the doublewrite buffer if innodb_force_recovery=6; normally, if the page is corrupt AND the corresponding page in the doublewrite buffer is also corrupt, InnoDB calls exit(1)
2003-05-12 17:33:42 +03:00
heikki@hundin.mysql.fi
aa92b8ecd1 row0ins.c, dict0dict.c, dict0dict.h, srv0srv.c:
Let SHOW INNODB STATUS print detailed info of the latest unique key violation, note that REPLACE and INSERT IGNORE mask the error from the user
2003-05-04 23:24:23 +03:00
heikki@hundin.mysql.fi
eab9a5e005 srv0srv.c:
Do not let the main thread sleep the 1 second if we had to do a bug pool flush batch trying to establish srv_max_buf_pool_modified_pct
2003-05-04 15:14:33 +03:00
heikki@hundin.mysql.fi
33e1b9398a srv0srv.c:
Clean up the working of the main thread; add a tunable parameter srv_max_buf_pool_modified_pct which can be used to make the flush phase in shutdown quicker
2003-05-03 19:46:03 +03:00
heikki@hundin.mysql.fi
971f770946 buf0buf.c, srv0srv.h, buf0buf.h, srv0srv.c:
Clean up the working of the main thread; add a tunable parameter srv_max_buf_pool_modified_pct which can be used to make the flush phase in shutdown quicker
2003-05-03 19:44:46 +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
heikki@hundin.mysql.fi
4cca7b5b50 srv0start.c:
fflush stderr after startup
2003-04-26 20:57:13 +03:00
heikki@hundin.mysql.fi
8a1eeca9be srv0srv.c:
Make sure we do not do insert buffer merge in fast shutdown even if there is some buglet which increments srv_activity_counter during a shutdown
2003-04-24 23:03:00 +03:00
heikki@hundin.mysql.fi
3866d38057 srv0srv.c:
Make buffer pool flush batches bigger as that may save some time if fsync is very inefficient
2003-04-24 21:51:00 +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
lenz@mysql.com
dbe145f015 - Fixed bug in "make DESTDIR=<dir> install" - the InnoDB static
libraries always ended up in "dir..", even though they were not supposed
   to be installed anyway (they are only required at link time). Fixed it by
   replacing libs_LIBRARIES with noinst_LIBRARIES for all InnoDB Makefile.am 
   files and by removing "libsdir = " from innobase/include/Makefile.i .
2003-04-10 20:03:52 +02:00
monty@narttu.mysql.fi
a434bca704 Merge with 4.0 2003-03-16 19:17:54 +02:00
heikki@hundin.mysql.fi
177f584f90 srv0start.c:
Print a more precise error message if log files or data files are of a size different from what is specified in my.cnf
2003-03-03 16:29:16 +02:00
monty@mashka.mysql.fi
023d6dd39b Merge with 4.0.11 2003-02-04 21:52:14 +02:00
heikki@hundin.mysql.fi
0da4275063 config-win.h, os0proc.h, os0proc.c, srv0start.c:
Make AWE compilation depend on __WIN2000__
2003-01-30 18:52:45 +02: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
monty@mashka.mysql.fi
76f146a175 Merge with 4.0.9 2003-01-18 03:13:37 +02:00
heikki@hundin.mysql.fi
244b378b47 srv0srv.c:
Make SHOW INNODB STATUS aware which trx's are waiting because of innodb_thread_concurrency exceeded
2003-01-15 22:48:02 +02:00
heikki@hundin.mysql.fi
40689f64e7 srv0srv.c:
Add another diagnostic print to determine why the 'queries inside InnoDB' counter might drift upwards
2003-01-13 00:44:42 +02:00
heikki@hundin.mysql.fi
be03863425 srv0srv.c, mem0pool.c, mem0pool.h, buf0buf.h, buf0buf.c:
Make smaller buffer headers and the lock table; fix AWE high_end bug
2003-01-09 00:10:36 +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
heikki@hundin.mysql.fi
843e1d8e9c Many files:
Merge InnoDB-4.0.7. Support for ON UPDATE CASCADE
sql_select.cc:
  Remove superfluous prints to .err log when a locking SELECT fails to a deadlock or a lock wait timeout
2002-12-22 01:54:29 +02:00
heikki@hundin.mysql.fi
8a7d6cd2ab srv0start.c:
Print an error message if someone tries to call InnoDB startip more than once during process lifetime
2002-11-16 01:59:04 +02:00
heikki@hundin.mysql.fi
b31f909d7b Many files:
Fix hang introduced by selective deadlock resolution
srv0srv.c, row0mysql.c:
  Fix hang introduced by selective deadlock resolution + corruption caused by lock timeout or sel deadl res in ON DELETE CASCADE
2002-11-07 14:47:25 +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
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
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
heikki@hundin.mysql.fi
2e0bffb9af srv0srv.c:
Fix typo
2002-09-20 05:50:25 +03:00
heikki@hundin.mysql.fi
f8d44429c5 srv0srv.h, srv0srv.c, row0mysql.c:
Put back a change unintentionally removed in the last 2 pushes
2002-09-20 05:44:41 +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
3bb2660d10 Merge with 3.23.53 2002-09-17 05:17:32 +03:00
heikki@hundin.mysql.fi
db8f4fd3d2 srv0srv.c, srv0srv.h:
Change srv_flush_log_at_trx_commit to ulint, note that ibool is defined as ulint, so this is purely formal change
os0file.c:
  Start using unbuffered i/o again in Windows because sequential read using normal i/o was 4 times slower in XP
2002-09-11 16:07:52 +03:00
monty@mashka.mysql.fi
8b7521eb7f Merge with 3.23.53 2002-09-11 14:49:38 +03:00
heikki@hundin.mysql.fi
d7bf8c2e6e srv0srv.c:
The option (= default) innodb_fast_shutdown did not always make the shutdown quickly, fix that
2002-09-07 23:37:27 +03:00