- 13 Aug, 2008 1 commit
-
-
Mattias Jonsson authored
-
- 12 Aug, 2008 10 commits
-
-
Marc Alff authored
-
Marc Alff authored
This fix is for 5.1 only : back porting the 6.0 patch manually The parser code in sql/sql_yacc.yy needs to be more robust to out of memory conditions, so that when parsing a query fails due to OOM, the thread gracefully returns an error. Before this fix, a new/alloc returning NULL could: - cause a crash, if dereferencing the NULL pointer, - produce a corrupted parsed tree, containing NULL nodes, - alter the semantic of a query, by silently dropping token values or nodes With this fix: - C++ constructors are *not* executed with a NULL "this" pointer when operator new fails. This is achieved by declaring "operator new" with a "throw ()" clause, so that a failed new gracefully returns NULL on OOM conditions. - calls to new/alloc are tested for a NULL result, - The thread diagnostic area is set to an error status when OOM occurs. This ensures that a request failing in the server properly returns an ER_OUT_OF_RESOURCES error to the client. - OOM conditions cause the parser to stop immediately (MYSQL_YYABORT). This prevents causing further crashes when using a partially built parsed tree in further rules in the parser. No test scripts are provided, since automating OOM failures is not instrumented in the server. Tested under the debugger, to verify that an error in alloc_root cause the thread to returns gracefully all the way to the client application, with an ER_OUT_OF_RESOURCES error.
-
Davi Arnaut authored
-
Davi Arnaut authored
-
Davi Arnaut authored
-
Mattias Jonsson authored
-
Davi Arnaut authored
-
Mattias Jonsson authored
-
Mattias Jonsson authored
partition is corrupt Updated result files after merge
-
Davi Arnaut authored
-
- 11 Aug, 2008 16 commits
-
-
Davi Arnaut authored
Post-merge fix: mysql_client_test.c is compiled by C compilers and some C compilers don't support mixed declarations and code and it's explicitly forbidden by ISO C90.
-
Marc Alff authored
Note: NULL merge of sql/sql_yacc.yy, the fix for bug#38296 will be provided separately for 5.1
-
Marc Alff authored
-
Marc Alff authored
Fixed missing DBUG_RETURN in the function find_key_block
-
Mattias Jonsson authored
-
Mattias Jonsson authored
partition is corrupt The main problem was that ALTER TABLE t ANALYZE/CHECK/OPTIMIZE/REPAIR PARTITION took another code path (over mysql_alter_table instead of mysql_admin_table) which differs in two ways: 1) alter table opens the tables in a different way than admin tables do resulting in returning with error before it tried the command 2) alter table does not start to send any diagnostic rows to the client which the lower admin functions continue to use -> resulting in assertion crash The fix: Remapped ALTER TABLE t ANALYZE/CHECK/OPTIMIZE/REPAIR PARTITION to use the same code path as ANALYZE/CHECK/OPTIMIZE/REPAIR TABLE t. Adding check in mysql_admin_table to setup the partition list for which partitions that should be used. Partitioned tables will still not work with REPAIR TABLE/PARTITION USE_FRM, since that requires moving partitions to tables, REPAIR TABLE t USE_FRM, and check that the data still fulfills the partitioning function and then move the table back to being a partition. NOTE: I have removed the following functions from the handler interface: analyze_partitions, check_partitions, optimize_partitions, repair_partitions Since they are not longer needed. THIS ALTERS THE STORAGE ENGINE API
-
Chad MILLER authored
-
Marc Alff authored
This fix is for 5.0 only : back porting the 6.0 patch manually The parser code in sql/sql_yacc.yy needs to be more robust to out of memory conditions, so that when parsing a query fails due to OOM, the thread gracefully returns an error. Before this fix, a new/alloc returning NULL could: - cause a crash, if dereferencing the NULL pointer, - produce a corrupted parsed tree, containing NULL nodes, - alter the semantic of a query, by silently dropping token values or nodes With this fix: - C++ constructors are *not* executed with a NULL "this" pointer when operator new fails. This is achieved by declaring "operator new" with a "throw ()" clause, so that a failed new gracefully returns NULL on OOM conditions. - calls to new/alloc are tested for a NULL result, - The thread diagnostic area is set to an error status when OOM occurs. This ensures that a request failing in the server properly returns an ER_OUT_OF_RESOURCES error to the client. - OOM conditions cause the parser to stop immediately (MYSQL_YYABORT). This prevents causing further crashes when using a partially built parsed tree in further rules in the parser. No test scripts are provided, since automating OOM failures is not instrumented in the server. Tested under the debugger, to verify that an error in alloc_root cause the thread to returns gracefully all the way to the client application, with an ER_OUT_OF_RESOURCES error.
-
Chad MILLER authored
-
Chad MILLER authored
-
Mattias Jonsson authored
-
Davi Arnaut authored
-
Davi Arnaut authored
-
Kristofer Pettersson authored
-
Kristofer Pettersson authored
-
Kristofer Pettersson authored
Server side cursors were not initialized properly and this caused a reference to uninitialized memory.
-
- 07 Aug, 2008 4 commits
-
-
Chad MILLER authored
-
Chad MILLER authored
-
Chad MILLER authored
running on Windows We used two OS-specific methods of looking up the executable name, which don't work outside of those two kinds of OSes (Linux+Solaris and Windows). We assume that if the user ran this program with a certain name, we can run the other sibling programs with a similar name. (re-patch in bzr)
-
Davi Arnaut authored
Post-merge fix: remove spurious semicolon that caused the function to return failure regardless of the outcome.
-
- 06 Aug, 2008 5 commits
-
-
Chad MILLER authored
-
Chad MILLER authored
Fall back to "find" if bzr is unavailable. Don't fail for paths that have spaces in them.
-
Chad MILLER authored
-
Chad MILLER authored
bk sfiles -> bzr ls
-
Kristofer Pettersson authored
-
- 04 Aug, 2008 1 commit
-
-
Kristofer Pettersson authored
-
- 01 Aug, 2008 1 commit
-
-
Davi Arnaut authored
Post-merge fix: Alter linking order so that the thread linking flags appear last in the list. This needs to be done this way because some linkers will not search the thread archive again if a undefined symbol (pthread_kill in this case) appears later.
-
- 31 Jul, 2008 2 commits
-
-
Georgi Kodinov authored
-
Georgi Kodinov authored
Reset session sql_mode before creating system tables as it is done in the mysql_fix_privilege_tables.sql script.
-