summaryrefslogtreecommitdiff
path: root/libmysqld
Commit message (Collapse)AuthorAgeFilesLines
* #41836: Eventum Request to enable the mysql_embedded binarySunanda Menon2011-07-191-3/+1
|
* Bug#12727287: Maintainer mode compilation fails with gcc 4.6Davi Arnaut2011-07-071-8/+7
| | | | | | | | | | | | | GCC 4.6 has new -Wunused-but-set-variable flag, which is enabled by -Wall, that causes GCC to emit a warning whenever a local variable is assigned to, but otherwise unused (aside from its declaration). Since the maintainer mode uses -Wall and -Werror, source code which triggers these warnings will be rejected. That is, these warnings become hard errors. The solution is to fix the code which triggers these specific warnings. In most of the cases, this is a welcome cleanup as code which triggers this warning is probably dead anyway.
* Updated/added copyright headersKent Boortz2011-07-041-2/+2
|\
| * BUG#12561297:LIBMYSQLD/EXAMPLE/MYSQL_EMBEDDED IS ABORTING.Mayank Prasad2011-06-141-2/+2
| | | | | | | | | | | | | | | | | | | | Issue: When libmysqld/example/mysql_embedded is executed, it was getting abort. Its a regression as it was working in 5.1 and failed in 5.5. Issue is there because remaining_argc/remaining_argv were not getting assigned correctly in init_embedded_server() which were being used later in init_common_variable(). Solution: Rectified code to pass correct argc/argv to be used in init_common_variable().
* | Updated/added copyright headersKent Boortz2011-06-308-8/+72
|\ \ | |/ |/|
| * Updated/added copyright headersKent Boortz2011-06-3010-11/+84
| |\
| | * Updated/added copyright headersKent Boortz2011-06-302-5/+7
| | |
* | | merge from 5.1 for bug#11764633Mayank Prasad2011-05-181-2/+26
| | |
* | | MergeKent Boortz2010-12-292-14/+15
|\ \ \ | |/ /
| * | MergeKent Boortz2010-12-292-14/+15
| |\ \ | | |/
| | * - Added/updated copyright headersKent Boortz2010-12-282-14/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Removed files specific to compiling on OS/2 - Removed files specific to SCO Unix packaging - Removed "libmysqld/copyright", text is included in documentation - Removed LaTeX headers for NDB Doxygen documentation - Removed obsolete NDB files - Removed "mkisofs" binaries - Removed the "cvs2cl.pl" script - Changed a few GPL texts to use "program" instead of "library"
| | * Bug#48983: Bad strmake calls (length one too long)Davi Arnaut2009-12-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | The problem is a somewhat common misusage of the strmake function. The strmake(dst, src, len) function writes at most /len/ bytes to the string pointed to by src, not including the trailing null byte. Hence, if /len/ is the exact length of the destination buffer, a one byte buffer overflow can occur if the length of the source string is equal to or greater than /len/.
* | | Merge 5.5-bug58158 into 5.5-bugteamMagnus Blåudd2010-11-241-2/+1
|\ \ \
| * | | Bug#58158 LINK_LIBRARIES for MYSQL_ADD_PLUGIN is not added to libmysqldMagnus Blåudd2010-11-161-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Add ARG_LINK_LIBRARIES to MYSQLD_STATIC_PLUGIN_LIBS in MYSQL_ADD_PLUGIN so that any libraries listed by the plugin is added to libmysqld - remove the variables NDB_CLIENT_LIBS and NDB_CLUSTER_INCLUDES from libmysqld/CMakeLists.txt since those are just old remnants
* | | | WL#5665: Removal of the autotools-based build systemDavi Arnaut2010-11-202-282/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The autotools-based build system has been superseded and is being removed in order to ease the maintenance burden on developers tweaking and maintaining the build system. In order to support tools that need to extract the server version, a new file that (only) contains the server version, called VERSION, is introduced. The file contents are human and machine-readable. The format is: MYSQL_VERSION_MAJOR=5 MYSQL_VERSION_MINOR=5 MYSQL_VERSION_PATCH=8 MYSQL_VERSION_EXTRA=-rc The CMake based version extraction in cmake/mysql_version.cmake is changed to extract the version from this file. The configure to CMake wrapper is retained for backwards compatibility and to support the BUILD/ scripts. Also, a new a makefile target show-dist-name that prints the server version is introduced.
* | | | BUG#57108: mysqld crashes when I attempt to install pluginMats Kindahl2010-11-041-1/+2
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a relative path is supplied to option --defaults-file or --defaults-extra-file, the server will crash when executing an INSTALL PLUGIN command. The reason is that the defaults file is initially read relative the current working directory when the server is started, but when INSTALL PLUGIN is executed, the server has changed working directory to the data directory. Since there is no check that the call to my_load_defaults() inside mysql_install_plugin(), the subsequence call to free_defaults() will crash the server. This patch fixes the problem by: - Prepending the current working directory to the file name when a relative path is given to the --defaults-file or --defaults- extra-file option the first time my_load_defaults() is called, which is just after the server has started in main(). - Adding a check of the return value of my_load_defaults() inside mysql_install_plugin() and aborting command (with an error) if an error is returned. - It also adds a check of the return value for load_defaults in lib_sql.cc for the embedded server since that was missing. To test that the relative files for the options --defaults-file and --defaults-extra-file is handled properly, mysql-test-run.pl is also changed to not add a --defaults-file option if one is provided in the tests *.opt file.
* | | mergeGeorgi Kodinov2010-10-042-14/+14
|\ \ \
| * | | Bug#53251 mysql_library_init fails on second execution with embedded ↵Alexey Botchkov2010-09-021-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | library thread-specific variables weren't set when we load error message files. per-file comments: libmysqld/lib_sql.cc Bug#53251 mysql_library_init fails on second execution with embedded library we need to call my_thread_init() once more. Normally it's called at the my_init() stage but that doesn't happen on the second my_init() call. sql/derror.cc Bug#53251 mysql_library_init fails on second execution with embedded library use default errors for the embedded server. sql/mysqld.cc Bug#53251 mysql_library_init fails on second execution with embedded library unregister server errors in clean_up(). Without it the error list contains that on the second mysql_server_init() which is not good. sql/set_var.cc Bug#53251 mysql_library_init fails on second execution with embedded library sys_var::cleanup() call instead of the destructor sql/set_var.h Bug#53251 mysql_library_init fails on second execution with embedded library sys_var::cleanup() introduced instead of the destructor sql/sys_vars.h Bug#53251 mysql_library_init fails on second execution with embedded library Sys_var_charptr::cleanup() implemented
| * | | Bug#54906 Inconsistent license of libmysqldAlexey Botchkov2010-09-011-14/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | made libmysqld/Makefile.am to have same licence as libmysqld/CMakeLists.txt per-file comments: libmysqld/Makefile.am Bug#54906 Inconsistent license of libmysqld Added GPL license header instead of Library GPL.
* | | | merge of mysql-5.5 into mysql-5.5-wl1054Georgi Kodinov2010-09-202-4/+7
|\ \ \ \ | |/ / /
| * | | Manual merge from mysql-5.5-bugfixing to mysql-5.5-runtime.Jon Olav Hauglid2010-08-183-8/+10
| |\ \ \
| | * \ \ mergeMattias Jonsson2010-08-162-4/+4
| | |\ \ \
| | | * | | Rename of sql_alter_table -> sql_alter and sql_table_maintenance -> sql_adminMattias Jonsson2010-08-162-4/+4
| | | | | |
| | * | | | mergeMattias Jonsson2010-08-162-4/+6
| | |\ \ \ \ | | | |/ / /
| | | * | | Bug#49907: ALTER TABLE ... TRUNCATE PARTITION does not wait forMattias Jonsson2010-08-162-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | locks on the table Fixing the partitioning specifics after TRUNCATE TABLE in bug-42643 was fixed. Reorganize of code to decrease the size of the giant switch in mysql_execute_command, and to prepare for future parser reengineering. Moved code into Sql_statement objects. Updated patch according to davi's review comments.
| * | | | | Extract reload_acl_and_cache() and flush_tables_with_read_lock()Konstantin Osipov2010-08-132-1/+2
| | |/ / / | |/| | | | | | | | into an own implementation file.
* | | | | merged mysql-5.5 into WL1054-5.5Georgi Kodinov2010-08-162-4/+4
|\ \ \ \ \ | | |/ / / | |/| | |
| * | | | Patch for Bug#55854 (MySQL AB should not be AUTHOR, copyright incorrect).Alexander Nozdrin2010-08-122-4/+4
| |/ / / | | | | | | | | Fixing copyright text.
* | | | WL#1054: Pluggable authentication supportGeorgi Kodinov2010-08-095-37/+56
|/ / / | | | | | | | | | Merged the implementation to a new base tree.
* | | WL#5498: Remove dead and unused source codeDavi Arnaut2010-07-232-2/+2
| | | | | | | | | Remove unused source code and associated paraphernalia.
* | | Automerge.Ramil Kalimullin2010-07-161-1/+2
|\ \ \ | |/ /
| * | Fix for bug #50667: The InnoDB plugin prevents initializationRamil Kalimullin2010-07-161-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | of the "embedded" server Problem: mysqltest_embedded failed to load ha_innodb_plugin library on some platforms (due to some unresolved references). Fix: on FreeBSD use -export-dynamic flag building mysqltest_embedded. That allows to use its global symbols to resolve references in the dynamically loaded plugin library.
* | | WL#5486: Remove code for unsupported platformsDavi Arnaut2010-07-151-0/+16
| | | | | | | | | Restore hack necessary to setup a libmysqld archive.
* | | WL#5486: Remove code for unsupported platformsDavi Arnaut2010-07-151-2/+2
| | | | | | | | | Remove OS/2 specific code.
* | | WL#5486: Remove code for unsupported platformsDavi Arnaut2010-07-151-2/+2
| | | | | | | | | Remove MS-DOS specific code.
* | | WL#5486: Remove code for unsupported platformsDavi Arnaut2010-07-151-21/+0
| | | | | | | | | Remove Netware specific code.
* | | Bug#34043: Server loops excessively in _checkchunk() when safemalloc is enabledDavi Arnaut2010-07-082-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Essentially, the problem is that safemalloc is excruciatingly slow as it checks all allocated blocks for overrun at each memory management primitive, yielding a almost exponential slowdown for the memory management functions (malloc, realloc, free). The overrun check basically consists of verifying some bytes of a block for certain magic keys, which catches some simple forms of overrun. Another minor problem is violation of aliasing rules and that its own internal list of blocks is prone to corruption. Another issue with safemalloc is rather the maintenance cost as the tool has a significant impact on the server code. Given the magnitude of memory debuggers available nowadays, especially those that are provided with the platform malloc implementation, maintenance of a in-house and largely obsolete memory debugger becomes a burden that is not worth the effort due to its slowness and lack of support for detecting more common forms of heap corruption. Since there are third-party tools that can provide the same functionality at a lower or comparable performance cost, the solution is to simply remove safemalloc. Third-party tools can provide the same functionality at a lower or comparable performance cost. The removal of safemalloc also allows a simplification of the malloc wrappers, removing quite a bit of kludge: redefinition of my_malloc, my_free and the removal of the unused second argument of my_free. Since free() always check whether the supplied pointer is null, redudant checks are also removed. Also, this patch adds unit testing for my_malloc and moves my_realloc implementation into the same file as the other memory allocation primitives.
* | | Auto-merge from mysql-trunk-stage.Alexander Nozdrin2010-06-211-2/+3
|\ \ \
| * \ \ mergeDaniel Fischer2010-06-181-2/+3
| |\ \ \
| | * \ \ mergeDaniel Fischer2010-04-301-1/+3
| | |\ \ \
| | | * | | Exclude "mysql_embedded" from being installed or part of a binaryKent Boortz2010-04-281-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | package, is more of a linktest of the embedded library.
| | * | | | MergeDaniel Fischer2010-04-214-13/+22
| | |\ \ \ \ | | | |/ / /
| | | * | | Try a bunch of fixes.Jonathan Perkin2010-03-311-1/+1
| | | | | |
| | | * | | Apply wlad fixes from mysql-next-mr-bugfixingJonathan Perkin2010-03-311-0/+5
| | | | | |
| | * | | | Add components to INSTALL, some eraly Wix supportVladislav Vaintroub2010-02-101-2/+3
| | | | | |
* | | | | | A pre-requisite for WL#5419 "LOCK_open scalability: Konstantin Osipov2010-06-101-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | make tdc_refresh_version an atomic counter". Backport the trivial changes from mysql-trunk-iplus.
* | | | | | manual merge from mysql-trunk-bugfixingJon Olav Hauglid2010-06-063-7/+2
|\ \ \ \ \ \ | |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: Text conflict in mysql-test/r/archive.result Contents conflict in mysql-test/r/innodb_bug38231.result Text conflict in mysql-test/r/mdl_sync.result Text conflict in mysql-test/suite/binlog/t/disabled.def Text conflict in mysql-test/suite/rpl_ndb/r/rpl_ndb_binlog_format_errors.result Text conflict in mysql-test/t/archive.test Contents conflict in mysql-test/t/innodb_bug38231.test Text conflict in mysql-test/t/mdl_sync.test Text conflict in sql/sp_head.cc Text conflict in sql/sql_show.cc Text conflict in sql/table.cc Text conflict in sql/table.h
| * | | | | Bug#52520 Difference in tinytext utf column metadataAlexander Barkov2010-06-021-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problems: - regression (compating to version 5.1) in metadata for BLOB types - inconsistency between length metadata in server and embedded for BLOB types - wrong max_length calculation in items derived from BLOB columns @ libmysqld/lib_sql.cc Calculating length metadata in embedded similary to server version, using new function char_to_byte_length_safe(). @ mysql-test/r/ctype_utf16.result Adding tests @ mysql-test/r/ctype_utf32.result Adding tests @ mysql-test/r/ctype_utf8.result Adding tests @ mysql-test/r/ctype_utf8mb4.result Adding tests @ mysql-test/t/ctype_utf16.test Adding tests @ mysql-test/t/ctype_utf32.test Adding tests @ mysql-test/t/ctype_utf8.test Adding tests @ mysql-test/t/ctype_utf8mb4.test Adding tests @ sql/field.cc Overriding char_length() for Field_blob: unlike in generic Item::char_length() we don't divide to mbmaxlen for BLOBs. @ sql/field.h - Making Field::char_length() virtual - Adding prototype for Field_blob::char_length() @ sql/item.h - Adding new helper function char_to_byte_length_safe() - Using new function @ sql/protocol.cc Using new function char_to_byte_length_safe(). modified: libmysqld/lib_sql.cc mysql-test/r/ctype_utf16.result mysql-test/r/ctype_utf32.result mysql-test/r/ctype_utf8.result mysql-test/r/ctype_utf8mb4.result mysql-test/t/ctype_utf16.test mysql-test/t/ctype_utf32.test mysql-test/t/ctype_utf8.test mysql-test/t/ctype_utf8mb4.test sql/field.cc sql/field.h sql/item.h sql/protocol.cc
| * | | | | Another incarnation of the patch for Bug#30708Alexander Nozdrin2010-05-192-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (make relies GNU extentions). The patch was partially backport from 6.0. Original comment: bug#30708: make relies GNU extensions. Now that we no longer use BitKeeper we can safely remove the SCCS handling with no loss of functionality.
* | | | | | Bug#42643: InnoDB does not support replication of TRUNCATE TABLEDavi Arnaut2010-05-252-2/+3
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem was that TRUNCATE TABLE didn't take a exclusive lock on a table if it resorted to truncating via delete of all rows in the table. Specifically for InnoDB tables, this could break proper isolation as InnoDB ends up aborting some granted locks when truncating a table. The solution is to take a exclusive metadata lock before TRUNCATE TABLE can proceed. This guarantees that no other transaction is using the table. Incompatible change: Truncate via delete no longer fails if sql_safe_updates is activated (this was a undocumented side effect).