Commit graph

220 commits

Author SHA1 Message Date
gbichot@quadita2.mysql.com
bc48cda57d Adding --innodb_fast_shutdown=2 which shuts down InnoDB faster than the default "1":
most InnoDB threads are not terminated properly and the buffer pool is not flushed
to disk. Still no committed transaction is lost as we flush the logs to disk.
InnoDB does crash recovery at startup after this shutdown.
Using this shutdown in testsuite (mysql-test-run --mysqld=--innodb_fast_shutdown=2) saved 3 minutes (13% of total time).
2005-04-15 18:00:38 +02:00
serg@serg.mylan
e1e5b97dea manually merged
Gluh's SESSION/GLOBAL for @variables fix in sql_yacc.yy and
Bar's well_formed_len() changes in ndb code
did not make it and should be re-applied manually
2005-04-06 21:19:20 +02:00
marko@hundin.mysql.fi
f32fe9c154 InnoDB: Avoid test suite failures caused by a locking conflict
between two server instances at server shutdown/startup.
This conflict on advisory locks appears to be the result of a bug
in the operating system; these locks should be released when the
files are closed, but somehow that does not always happen
immediately in Linux.  (Bug #9381)
2005-04-06 15:09:15 +03:00
gbichot@quadita2.mysql.com
8b625529c9 This code change has 0 effects as it's about the case where innobase_very_fast_shutdown!=0,
which is always false. In a very fast InnoDB shutdown, we just ensure that
no more transactions are running, flush InnoDB log, signal InnoDB threads to die,
and then return from InnoDB (from innobase_end()) without waiting for those threads
to actually die. I have tested on a 4CPU machine that even with --innodb_flush_log_at_trx_commit=0,
this optimized InnoDB very fast shutdown loses no committed transactions. Patch pre-approved by Heikki.
2005-03-09 00:32:58 +01:00
marko@hundin.mysql.fi
c098c27af5 InnoDB: Win64 portability fixes 2005-03-08 16:25:31 +02:00
marko@hundin.mysql.fi
4fe94704a7 Merge hundin.mysql.fi:/home/marko/k/mysql-4.0
into hundin.mysql.fi:/home/marko/mysql-4.1
2005-03-08 16:02:13 +02:00
marko@hundin.mysql.fi
beea918092 InnoDB: Win64 portability fix: add missing declaration and
correct the definition of srv_max_buf_pool_modified_pct.
2005-03-08 11:12:18 +02:00
jimw@mysql.com
f7c01cfb76 Merged from 4.1 2005-03-03 15:01:46 -08:00
heikki@hundin.mysql.fi
07a0fdeb24 srv0start.c:
Work around the AIX 5.1 security patch ML7 problem in errno when it should be EEXIST
2005-03-03 18:00:34 +02:00
heikki@hundin.mysql.fi
df6d26e4bd srv0start.c:
Work around the AIX 5.1 ML7 patch problem in errno at a higher level, in srv0start.c
os0file.c:
  Revert the AIX patch here
2005-03-03 17:46:56 +02:00
ingo@mysql.com
306bd2fc69 Merge 2005-03-02 10:56:13 +01:00
marko@hundin.mysql.fi
5faaf74818 InnoDB: Zero fill newly created pages and deleted records to
remove old junk and to improve compression ratio.
InnoDB: Make implicit type conversions explicit. (Bug #8826)
2005-03-01 13:54:48 +02:00
marko@hundin.mysql.fi
2b10afd911 After merge fixes 2005-03-01 09:51:32 +02:00
marko@hundin.mysql.fi
ce553fc2fe InnoDB: Fix compilation errors on IA-64 Windows 2005-03-01 09:27:09 +02:00
marko@hundin.mysql.fi
6c43fb504b InnoDB: Exclude code from InnoDB Hot Backup builds
by adding #ifndef UNIV_HOTBACKUP and adjusting some function
declarations.
2005-02-04 16:25:13 +02:00
marko@hundin.mysql.fi
638e2bd733 InnoDB: Backport innodb_autoextend_increment from 4.1 2005-01-25 16:27:13 +02:00
monty@mysql.com
0a1076a25f Merge with 4.1 2005-01-15 14:09:45 +02:00
marko@hundin.mysql.fi
284191d19a InnoDB: Detect the availability of the Mac OS X fsync() work-around
at run-time, so that an executable compiled on Mac OS X 10.2 can
be run on Mac OS X 10.2 (without the work-around) and Mac OS X 10.3
and later with the work-aroud enabled.
2005-01-13 16:15:14 +02:00
vtkachenko@intelp4d.mysql.com
faeac11865 Merge bk-internal:/home/bk/mysql-5.0
into intelp4d.mysql.com:/users/vtkachenko/bk/mysql-5.0
2005-01-08 15:06:20 +01:00
vtkachenko@intelp4d.mysql.com
ad7dad8d03 Many files:
- Create innodb_thread_concurrency as dynamic variable
  - Add innodb_thread_sleep_delay variable
  - Add innodb_free_tickets_to_enter variable
2005-01-08 15:01:37 +01:00
marko@hundin.mysql.fi
a5fab97cfb InnoDB: Fix compiler warnings and some bad formatting introduced
in ChangeSet@1.1721.48.1
2005-01-05 12:22:04 +02:00
serg@sergbook.mysql.com
a04fc26c54 manually merged 2004-12-31 15:26:24 +01:00
vtkachenko@intelp4d.mysql.com
ae1b969c8f Merge bk-internal:/home/bk/mysql-5.0
into intelp4d.mysql.com:/users/vtkachenko/bk/mysql-5.0
2004-12-31 09:00:34 +01:00
heikki@hundin.mysql.fi
2aa98f89aa srv0start.c:
Print a more descriptive error and refuse to start InnoDB if the size of ibdata files is smaller than what is stored in the tablespace header; innodb_force_recovery will override this
2004-12-29 17:06:26 +02:00
heikki@hundin.mysql.fi
7ad5e20461 Many files:
Fix InnoDB critical bug #7496; we scan the InnoDB data dictionary also at a normal mysqld startup, and create the spaces, so that we know the mapping space id -> .ibd file name; fix an infinite loop if DISCARD TABLESPACE coincides with INSERT or some other table operation; fix a potential crash if DISCARD TABLESPACE coincides with a cascaded FOREIGN KEY operation in the same table; do not allow DISCARD TABLESPACE of a referenced table if FOREIGN_KEY_CHECKS=1
2004-12-27 04:10:25 +02:00
vtkachenko@intelp4d.mysql.com
f1dfafe721 Many files:
tabs replaced
ha_innodb.cc:
  Comments removed
2004-12-24 13:31:21 +01:00
vtkachenko@intelp4d.mysql.com
78846b2923 logging_ok:
Logging to logging@openlogging.org accepted
sql_yacc.yy, sql_parse.cc, sql_lex.h, lex.h:
  Implements the SHOW MUTEX STATUS command
set_var.cc, mysqld.cc, mysql_priv.h:
  Added new GLOBAL variable timed_mutexes
ha_innodb.h:
  New function innodb_mutex_show_status
ha_innodb.cc:
  Added new innodb variables in SHOW STATUS
  Implements the SHOW MUTEX STATUS command
innodb.test, innodb.result:
  Added new row_lock_waits status variables tests.
variables.test, variables.result:
  test new variable timed_mutexes
ut0ut.c:
  New function ut_usectime.
sync0sync.c:
  Mutex counting.
sync0rw.c:
  New mutex parameters initialization.
srv0srv.c:
  Counting row lock waits
row0sel.c, row0mysql.c:
  Setting row_lock or table_lock state to thd.
que0que.c:
  Added default no_lock_state to thd.
univ.i:
  Added UNIV_SRV_PRINT_LATCH_WAITS debug define
sync0sync.ic:
  Count mutex using.
sync0sync.h:
  Added new parameters to mutex structure for counting.
sync0rw.h:
  Added new parameters to rw_create_func.
srv0srv.h:
  Added new innodb varuables to SHOW STATUS.
que0que.h:
  Added thread lock states.
2004-12-24 12:13:32 +01:00
monty@mishka.local
4f4bbfc279 Merge with 4.1 2004-12-22 13:54:39 +02:00
heikki@hundin.mysql.fi
75b6b7ed70 trx0roll.c:
Print progress of background rollback of transactions with more than 1000 undo log entries
srv0start.c, trx0roll.c, log0recv.c, trx0roll.h:
  Cleanup background rollback code in crash recovery; do not flush all modified pages from the buffer pool after a crash recovery: this makes mysqld accesible for users more quickly
2004-12-18 18:20:23 +02:00
kaa@polly.local
2ce0ad6d7e Forward port of HugeTLB, InnoDB doublewrite and checksums patches to 5.0 2004-12-14 22:26:31 +03:00
marko@hundin.mysql.fi
99571d271e Merge hundin.mysql.fi:/home/marko/k/mysql-4.0
into hundin.mysql.fi:/home/marko/k/mysql-4.1
2004-12-10 23:38:44 +02:00
marko@hundin.mysql.fi
15152a380d srv0srv.c:
srv_printf_innodb_monitor(): Removed extraneous rewind() call.
  The caller of this function calls rewind() if necessary.
  In this way, we avoid rewind()ing stderr in
  srv_lock_timeout_and_monitor_thread().
2004-12-10 00:06:33 +02:00
marko@hundin.mysql.fi
dd48953956 Many files:
Implement more compact InnoDB record format.
  Old format is available as CREATE TABLE ... ROW_FORMAT=DYNAMIC.
2004-12-02 19:45:07 +02:00
serg@serg.mylan
b460059988 merged 2004-11-28 20:42:04 +01:00
serg@serg.mylan
96729c62be merged 2004-11-28 18:19:01 +01:00
tomas@poseidon.ndb.mysql.com
97c8234b46 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-5.0
2004-11-26 13:44:49 +00:00
marko@hundin.mysql.fi
d58c186759 srv0srv.c:
srv_lock_timeout_and_monitor_thread(): write to srv_monitor_file
  only if --innodb_status_file=1
2004-11-26 13:16:37 +02:00
heikki@hundin.mysql.fi
ccec75f9af Many files:
Fix bug #6817 and bug #6827 : do not crash the server if the buffer pool becomes filled by the locks of ONE huge transaction, return error 1206 instead; do not crash the server, but return error if we cannot allocate memory for the buffer pool at a mysqld startup
2004-11-26 00:12:50 +02:00
petr@mysql.com
890211a7c4 WL 2059 Engine-specific status variables framework and WL 1922
InnoDB status variables
2004-11-18 13:00:42 +03:00
monty@mysql.com
5b29f59aa8 Fixed access to freed memory 2004-10-27 21:56:17 +03:00
monty@mysql.com
3493f54a5e Merge with 4.0 2004-10-27 19:52:41 +03:00
marko@hundin.mysql.fi
b5f49a3abd Backport innodb_max_purge_lag from 4.1 2004-10-27 13:33:11 +03:00
monty@mysql.com
f9cd4a60e4 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1
2004-10-20 15:14:06 +03:00
monty@mishka.local
7af65592c7 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mishka.local:/home/my/mysql-4.1
2004-10-20 02:55:03 +03:00
monty@mishka.local
04c23808a8 Review of all code pushed since last review
Simple optimzations and cleanups
Removed compiler warnings and fixed portability issues
Added client functions 'mysql_embedded()' to allow client to check if we are using embedded server
Fixes for purify
2004-10-20 01:28:42 +03:00
heikki@hundin.mysql.fi
f687608e1c srv0srv.c:
If innodb_thread_concurrency would be exceeded, let a thread sleep 10 ms before entering the FIFO queue; previously, the value was 50 ms, which Peter Z considered too long
2004-10-18 15:00:39 +03:00
heikki@hundin.mysql.fi
5fa601111e srv0srv.c, log0log.c, srv0srv.h, ha_innodb.cc, ha_innodb.h:
Implement innobase_very_fast_shutdown and innobase_start_trx_and_assign_read_view(); these were requested by Guilhem
2004-10-13 20:04:52 +03:00
monty@mysql.com
8d73628d88 Merge 2004-10-08 15:43:27 +03:00
marko@hundin.mysql.fi
badf8e715a InnoDB: tolerate system clock glitches a little better
in the error monitor thread.  (Bug #5898)
2004-10-07 15:58:47 +03:00
marko@hundin.mysql.fi
1bd65d7715 InnoDB: implement innodb_max_purge_lag 2004-09-30 15:54:19 +03:00