mirror of
https://github.com/MariaDB/server.git
synced 2026-04-24 01:05:30 +02:00
MariaDB server is a community developed fork of MySQL server. Started by core members of the original MySQL team, MariaDB actively works with outside developers to deliver the most featureful, stable, and sanely licensed open SQL server in the industry.
amazon-web-services
database
fulltext-search
galera
geographical-information-system
innodb
json
mariadb
mysql
rdbms
relational-databases
sql
storage-engine
vector-database
- MariaDB\ 71.8%
- C++ 16.4%
- C 10.4%
- Shell 0.5%
- Perl 0.4%
- Other 0.3%
Fixes: - Bug #15815: Very poor performance with multiple queries running concurrently - Bug #22868: 'Thread thrashing' with > 50 concurrent conns under an upd-intensive workloadw - Bug #23769: Debug assertion failure with innodb_locks_unsafe_for_binlog - Bug #24089: Race condition in fil_flush_file_spaces() innobase/buf/buf0buf.c: Applied innodb-5.0-ss982, -ss998, -ss1003 Revision r1000: branches/5.0: Merge r999 from trunk: Reduce buffer pool mutex contention under >= 4 big concurrent CPU-bound SELECT queries. (Bug #22868) Fix: replace the mutex by one mutex protecting the 'flush list' (and the free list) and several mutexes protecting portions of the buffer pool, where we keep several indivudual LRU lists of pages. This patch is from Sunny Bains and Heikki Tuuri. innobase/buf/buf0flu.c: Applied innodb-5.0-ss982, -ss998, -ss1003 Revision r1000: branches/5.0: Merge r999 from trunk: Reduce buffer pool mutex contention under >= 4 big concurrent CPU-bound SELECT queries. (Bug #22868) Fix: replace the mutex by one mutex protecting the 'flush list' (and the free list) and several mutexes protecting portions of the buffer pool, where we keep several indivudual LRU lists of pages. This patch is from Sunny Bains and Heikki Tuuri. innobase/buf/buf0lru.c: Applied innodb-5.0-ss982, -ss998, -ss1003 Revision r1000: branches/5.0: Merge r999 from trunk: Reduce buffer pool mutex contention under >= 4 big concurrent CPU-bound SELECT queries. (Bug #22868) Fix: replace the mutex by one mutex protecting the 'flush list' (and the free list) and several mutexes protecting portions of the buffer pool, where we keep several indivudual LRU lists of pages. This patch is from Sunny Bains and Heikki Tuuri. innobase/dict/dict0crea.c: Applied innodb-5.0-ss982, -ss998, -ss1003 Revision r974: branches/5.0: Port r973 from trunk. Do not break the latching order in TRUNCATE TABLE. dict_truncate_index_tree(): Replace parameter rec_t* rec with btr_pcur_t* pcur. Reposition pcur before calling btr_create(). sync_thread_add_level(): Remove the relaxation of the assertion added in r968. innobase/fil/fil0fil.c: Applied innodb-5.0-ss982, -ss998, -ss1003 Revision r1003: branches/5.0: Merge r1002 from trunk: fil_flush_file_spaces(): Copy the system->unflushed_spaces list to an array while holding the mutex. This removes the crash-triggering race condition that was introduced when fixing Bug 15653. (Bug #24089) innobase/include/buf0buf.h: Applied innodb-5.0-ss982, -ss998, -ss1003 Revision r1000: branches/5.0: Merge r999 from trunk: Reduce buffer pool mutex contention under >= 4 big concurrent CPU-bound SELECT queries. (Bug #22868) Fix: replace the mutex by one mutex protecting the 'flush list' (and the free list) and several mutexes protecting portions of the buffer pool, where we keep several indivudual LRU lists of pages. This patch is from Sunny Bains and Heikki Tuuri. innobase/include/buf0buf.ic: Applied innodb-5.0-ss982, -ss998, -ss1003 Revision r1000: branches/5.0: Merge r999 from trunk: Reduce buffer pool mutex contention under >= 4 big concurrent CPU-bound SELECT queries. (Bug #22868) Fix: replace the mutex by one mutex protecting the 'flush list' (and the free list) and several mutexes protecting portions of the buffer pool, where we keep several indivudual LRU lists of pages. This patch is from Sunny Bains and Heikki Tuuri. innobase/include/dict0crea.h: Applied innodb-5.0-ss982, -ss998, -ss1003 Revision r974: branches/5.0: Port r973 from trunk. Do not break the latching order in TRUNCATE TABLE. dict_truncate_index_tree(): Replace parameter rec_t* rec with btr_pcur_t* pcur. Reposition pcur before calling btr_create(). sync_thread_add_level(): Remove the relaxation of the assertion added in r968. innobase/include/sync0arr.h: Applied innodb-5.0-ss982, -ss998, -ss1003 Revision r1001: branches/5.0: Reduce locking contention: Bug #15815: 'Thread thrashing' with > 50 concurrent connections under an update-intensive workload. Fix: Introduce one event per InnoDB semaphore. This patch is from Sunny Bains and Heikki Tuuri. This patch will not be merged to trunk (MySQL/InnoDB 5.1) yet, because it tries to address the problem in a different way. innobase/include/sync0rw.h: Applied innodb-5.0-ss982, -ss998, -ss1003 Revision r1001: branches/5.0: Reduce locking contention: Bug #15815: 'Thread thrashing' with > 50 concurrent connections under an update-intensive workload. Fix: Introduce one event per InnoDB semaphore. This patch is from Sunny Bains and Heikki Tuuri. This patch will not be merged to trunk (MySQL/InnoDB 5.1) yet, because it tries to address the problem in a different way. innobase/include/sync0rw.ic: Applied innodb-5.0-ss982, -ss998, -ss1003 Revision r1001: branches/5.0: Reduce locking contention: Bug #15815: 'Thread thrashing' with > 50 concurrent connections under an update-intensive workload. Fix: Introduce one event per InnoDB semaphore. This patch is from Sunny Bains and Heikki Tuuri. This patch will not be merged to trunk (MySQL/InnoDB 5.1) yet, because it tries to address the problem in a different way. innobase/include/sync0sync.h: Applied innodb-5.0-ss982, -ss998, -ss1003 Revision r1001: branches/5.0: Reduce locking contention: Bug #15815: 'Thread thrashing' with > 50 concurrent connections under an update-intensive workload. Fix: Introduce one event per InnoDB semaphore. This patch is from Sunny Bains and Heikki Tuuri. This patch will not be merged to trunk (MySQL/InnoDB 5.1) yet, because it tries to address the problem in a different way. innobase/os/os0sync.c: Applied innodb-5.0-ss982, -ss998, -ss1003 Revision r1001: branches/5.0: Reduce locking contention: Bug #15815: 'Thread thrashing' with > 50 concurrent connections under an update-intensive workload. Fix: Introduce one event per InnoDB semaphore. This patch is from Sunny Bains and Heikki Tuuri. This patch will not be merged to trunk (MySQL/InnoDB 5.1) yet, because it tries to address the problem in a different way. innobase/row/row0mysql.c: Applied innodb-5.0-ss982, -ss998, -ss1003 Revision r974: branches/5.0: Port r973 from trunk. Do not break the latching order in TRUNCATE TABLE. dict_truncate_index_tree(): Replace parameter rec_t* rec with btr_pcur_t* pcur. Reposition pcur before calling btr_create(). sync_thread_add_level(): Remove the relaxation of the assertion added in r968. innobase/row/row0sel.c: Applied innodb-5.0-ss982, -ss998, -ss1003 Revision r982: branches/5.0: row_sel(): Do not try to acquire a LOCK_REC_NOT_GAP lock on the supremum record. Instead, skip to the next record. (Bug #23769) This fix was backported from r623 in the 5.1 tree. innobase/srv/srv0start.c: Applied innodb-5.0-ss982, -ss998, -ss1003 Revision r926: Refer to bug: 22268. Since no one tries to run 5.0 on Windows 95/ME it was decided to raise the limit of srv_max_n_threads to 10000 on Windows. innobase/sync/sync0arr.c: Applied innodb-5.0-ss982, -ss998, -ss1003 Revision r1001: branches/5.0: Reduce locking contention: Bug #15815: 'Thread thrashing' with > 50 concurrent connections under an update-intensive workload. Fix: Introduce one event per InnoDB semaphore. This patch is from Sunny Bains and Heikki Tuuri. This patch will not be merged to trunk (MySQL/InnoDB 5.1) yet, because it tries to address the problem in a different way. innobase/sync/sync0rw.c: Applied innodb-5.0-ss982, -ss998, -ss1003 Revision r1001: branches/5.0: Reduce locking contention: Bug #15815: 'Thread thrashing' with > 50 concurrent connections under an update-intensive workload. Fix: Introduce one event per InnoDB semaphore. This patch is from Sunny Bains and Heikki Tuuri. This patch will not be merged to trunk (MySQL/InnoDB 5.1) yet, because it tries to address the problem in a different way. innobase/sync/sync0sync.c: Applied innodb-5.0-ss982, -ss998, -ss1003 Revision r969: branches/5.0: Port r968 from trunk: sync_thread_add_level(): When level == SYNC_TREE_NODE, allow the latching order to be violated if the thread holds dict_operation_lock, whose level is SYNC_DICT_OPERATION. This removes the assertion failure of TRUNCATE TABLE #ifdef UNIV_SYNC_DEBUG. Revision r974: branches/5.0: Port r973 from trunk. Do not break the latching order in TRUNCATE TABLE. dict_truncate_index_tree(): Replace parameter rec_t* rec with btr_pcur_t* pcur. Reposition pcur before calling btr_create(). sync_thread_add_level(): Remove the relaxation of the assertion added in r968. Revision r1001: branches/5.0: Reduce locking contention: Bug #15815: 'Thread thrashing' with > 50 concurrent connections under an update-intensive workload. Fix: Introduce one event per InnoDB semaphore. This patch is from Sunny Bains and Heikki Tuuri. This patch will not be merged to trunk (MySQL/InnoDB 5.1) yet, because it tries to address the problem in a different way. |
||
|---|---|---|
| bdb | ||
| BitKeeper | ||
| BUILD | ||
| client | ||
| cmd-line-utils | ||
| config/ac-macros | ||
| dbug | ||
| Docs | ||
| extra | ||
| heap | ||
| include | ||
| innobase | ||
| libmysql | ||
| libmysql_r | ||
| libmysqld | ||
| man | ||
| myisam | ||
| myisammrg | ||
| mysql-test | ||
| mysys | ||
| ndb | ||
| netware | ||
| os2 | ||
| pstack | ||
| regex | ||
| scripts | ||
| server-tools | ||
| sql | ||
| sql-bench | ||
| sql-common | ||
| SSL | ||
| strings | ||
| support-files | ||
| tests | ||
| tools | ||
| VC++Files | ||
| vio | ||
| win | ||
| zlib | ||
| .bzrignore | ||
| .cvsignore | ||
| CMakeLists.txt | ||
| configure.in | ||
| COPYING | ||
| Makefile.am | ||
| README | ||
This is a release of MySQL, a dual-license SQL database server. MySQL is brought to you by the MySQL team at MySQL AB. License information can be found in these files: - For GPL (free) distributions, see the COPYING file and the EXCEPTIONS-CLIENT file. - For commercial distributions, see the LICENSE.mysql file. For further information about MySQL or additional documentation, see: - The latest information about MySQL: http://www.mysql.com - The current MySQL documentation: http://dev.mysql.com/doc Some manual sections of special interest: - If you are migrating from an older version of MySQL, please read the "Upgrading from..." section first! - To see what MySQL can do, take a look at the features section. - For installation instructions, see the Installing and Upgrading chapter. - For the new features/bugfix history, see the Change History appendix. - For the currently known bugs/misfeatures (known errors) see the Problems and Common Errors appendix. - For a list of developers and other contributors, see the Credits appendix. A local copy of the MySQL Reference Manual can be found in the Docs directory in GNU Info format. You can also browse the manual online or download it in any of several formats at the URL given earlier in this file. ************************************************************ IMPORTANT: Bug or error reports should be sent to http://bugs.mysql.com.