An error occurred fetching the project authors.
- 12 Sep, 2009 1 commit
-
-
vasil authored
Rename HAVE_SOLARIS_ATOMICS to HAVE_IB_SOLARIS_ATOMICS and IB_HAVE_PAUSE_INSTRUCTION to HAVE_IB_PAUSE_INSTRUCTION so they all follow the same HAVE_IB_* convention.
-
- 31 Aug, 2009 1 commit
-
- 06 Aug, 2009 1 commit
-
-
calvin authored
-
- 30 Jun, 2009 2 commits
- 08 Jun, 2009 1 commit
-
-
inaam authored
Non functional change: Added legal notices acknowledging percona contribution to the multiple IO helper threads patch i.e.: r5262
-
- 05 Jun, 2009 1 commit
-
-
vasil authored
Enable functionality to have multiple background io helper threads. This patch is based on percona contributions. More details about this patch will be written at: https://svn.innodb.com/innobase/MultipleBackgroundThreads The patch essentially does the following: expose following knobs: innodb_read_io_threads = [1 - 64] default 1 innodb_write_io_threads = [1 - 64] default 1 deprecate innodb_file_io_threads (this parameter was relevant only on windows) Internally it allows multiple segments for read and write IO request arrays where one thread works on one segement. Submitted by: Inaam (rb://124) Approved by: Heikki (rb://124)
-
- 26 May, 2009 1 commit
-
-
marko authored
#defines and global variables. Many are still missing.
-
- 25 May, 2009 2 commits
-
-
marko authored
/********************************* comments to Doxygen /** style like this: /*****************************//** This conversion was performed by the following command: perl -i -e 'while(<ARGV>){if (m|^/\*{30}\**$|) { s|\*{4}$|//**| if ++$com>1; $_ .= "\@file $ARGV\n" if $com==2} print; if(eof){$.=0;undef $com}}' */*[ch] include/univ.i
-
marko authored
This patch was created by running the following commands: for i in */*[ch]; do doxygenify.pl $i; done perl -i -pe 's#\*{3} \*/$#****/#' */*[ch] where doxygenify.pl is https://svn.innodb.com/svn/misc/trunk/tools/doxygenify.pl r510 Verified the consistency as follows: (0) not too many /* in: */ or /* out: */ comments left in the code: grep -l '/\*\s*\(in\|out\)[,:/]' */*[ch] (1) no difference when ignoring blank lines, after stripping all C90-style /* comments */, including multi-line ones, before and after applying this patch: perl -i -e 'undef $/;while(<ARGV>){s#/\*(.*?)\*/##gs;print}' */*[ch] diff -I'^\s*$' --exclude .svn -ru TREE1 TREE2 (2) after stripping @return comments and !<, generated a diff and omitted the hunks where /* out: */ function return comments were removed: perl -i -e'undef $/;while(<ARGV>){s#!<##g;s#\n\@return\t.*?\*/# \*/#gs;print}'\ */*[ch] svn diff| perl -e 'undef $/;$_=<>;s#\n-\s*/\* out[:,]([^\n]*?)(\n-[^\n]*?)*\*/##gs;print' Some unintended changes were left. These will be removed in a subsequent patch.
-
- 20 May, 2009 2 commits
- 16 Apr, 2009 1 commit
-
-
marko authored
MySQL Reference Manual and use it in every string. This fixes Issue #221.
-
- 15 Apr, 2009 1 commit
-
-
calvin authored
access Mapping the atomic operations to Windows Interlocked functions: os_compare_and_swap_* to InterlockedCompareExchange(64) os_atomic_increment_* to InterlockedExchangeAdd(64) os_atomic_test_and_set_byte to InterlockedExchange In this patch, the legacy code under UNIV_CAN_USE_X86_ASSEMBLER is removed all together, and add HAVE_WINDOWS_ATOMICS and INNODB_RW_LOCKS_USE_ATOMICS to CMakeLists.txt This is to address mantis issue#194. rb://113 Approved by: Marko
-
- 07 Apr, 2009 1 commit
-
-
inaam authored
Enable atomics on solaris (using the libc functions as defined in atomic.h) if GCC atomic builtins are not present. There still remains some work to be done (by Vasil?). This patch makes changes to plug.in to check pthread_t size and presence of atomic functions when running on solaris. The same has to become a part of the generated Makefile.in when we bake our source. Reviewed by: Heikki rb://106
-
- 23 Mar, 2009 1 commit
-
-
marko authored
from UNIV_HOTBACKUP builds.
-
- 20 Mar, 2009 1 commit
-
-
marko authored
-
- 05 Mar, 2009 2 commits
- 25 Feb, 2009 1 commit
-
-
marko authored
again, to finally put Issue #181 to rest. Revert some parts of r4274. It is best not to call ut_malloc() before srv_general_init(). mem_init(): Do not call ut_mem_init(). srv_general_init(): Initialize the memory subsystem in two phases: first ut_mem_init(), then mem_init(). This is because os_sync_init() and sync_init() depend on ut_mem_init() and mem_init() depends on os_sync_init() or sync_init(). srv_parse_data_file_paths_and_sizes(), srv_parse_log_group_home_dirs(): Remove the output parameters. Assign to the global variables directly. Allocate memory with malloc() instead of ut_malloc(), because these functions will be called before srv_general_init(). srv_free_paths_and_sizes(): New function, for cleaning up after srv_parse_data_file_paths_and_sizes() and srv_parse_log_group_home_dirs(). rb://92 approved by Sunny Bains
-
- 24 Feb, 2009 1 commit
-
-
marko authored
-
- 20 Feb, 2009 1 commit
-
-
marko authored
Replace srv_use_sys_malloc with UNIV_LIKELY(srv_use_sys_malloc) to improve branch prediction in the default case. Approved by Ken over the IM.
-
- 17 Feb, 2009 1 commit
-
-
vasil authored
To the files touched by the Google patch from c4144 (excluding include/os0sync.ic because later we removed Google code from that file): * Remove the Google license * Remove old Innobase copyright lines * Add a reference to the Google license and to the GPLv2 license at the top, as recommended by the lawyers at Oracle Legal.
-
- 09 Feb, 2009 1 commit
-
-
rb://30inaam authored
This patch changes the innodb mutexes and rw_locks implementation. On supported platforms it uses GCC builtin atomics. These changes are based on the patch sent by Mark Callaghan of Google under BSD license. More technical discussion can be found at rb://30 Approved by: Heikki
-
- 02 Feb, 2009 1 commit
-
-
marko authored
in the function comment. Parameters are not read from a file "srv_init".
-
- 02 Jan, 2009 1 commit
-
- 09 Aug, 2008 1 commit
-
-
sunny authored
-
- 18 Jun, 2008 1 commit
-
-
inaam authored
This is to fix an unintended side effect of file_format_check changes. We were reading the trx system page (TRX_SYS_PAGE_NO) before starting recovery and that resulted in redo logs not being applied to the page. The fix is to force a reread by calling buf_pool_invalidate(). This, however, made necessary that any writes to page are deferred to until after the redo log application. Reviewed by: Sunny
-
- 17 Jun, 2008 1 commit
-
-
sunny authored
debug build leads to deadlocks. Print a warning at startup. See issue:43
-
- 06 Jun, 2008 1 commit
-
-
vasil authored
(r2478 was skipped for the obvious reason) ------------------------------------------------------------------------ r2464 | vasil | 2008-05-19 17:59:42 +0300 (Mon, 19 May 2008) | 9 lines branches/5.1: Fix Bug#36600 SHOW STATUS takes a lot of CPU in buf_get_latched_pages_number by removing the Innodb_buffer_pool_pages_latched variable from SHOW STATUS output in non-UNIV_DEBUG compilation. Approved by: Heikki ------------------------------------------------------------------------ r2466 | calvin | 2008-05-20 01:37:14 +0300 (Tue, 20 May 2008) | 12 lines branches/5.1: Fix Bug#11894 innodb_file_per_table crashes w/ Windows .sym symbolic link hack The crash was due to un-handled error 3 (path not found). In the case of file per table, change the call to os_file_handle_error_no_exit() from os_file_handle_error(). Also, checks for full path pattern during table create (Windows only), which is used in symbolic link and temp table creation. Approved by: Heikki ------------------------------------------------------------------------ r2478 | sunny | 2008-05-23 08:29:08 +0300 (Fri, 23 May 2008) | 3 lines branches/5.1: Fix for bug# 36793. This is a back port from branches/zip. This code has been tested on a big-endian machine too. ------------------------------------------------------------------------ r2480 | vasil | 2008-05-27 11:40:07 +0300 (Tue, 27 May 2008) | 11 lines branches/5.1: Fix Bug#36819 ut_usectime does not handle errors from gettimeofday by retrying gettimeofday() several times if it fails in ut_usectime(). If it fails on all calls then return error to the caller to be handled at higher level. Update the variable innodb_row_lock_time_max in SHOW STATUS output only if ut_usectime() was successful. ------------------------------------------------------------------------ r2482 | sunny | 2008-05-28 12:18:35 +0300 (Wed, 28 May 2008) | 5 lines branches/5.1: Fix for Bug#35602, "Failed to read auto-increment value from storage engine". The test for REPLACE was an error of ommission since it's classified as a simple INSERT. For REPLACE statements we don't acquire the special AUTOINC lock for AUTOINC_NEW_STYLE_LOCKING with this fix. ------------------------------------------------------------------------ r2485 | vasil | 2008-05-28 16:01:14 +0300 (Wed, 28 May 2008) | 9 lines branches/5.1: Fix Bug#36149 Read buffer overflow in srv0start.c found during "make test" Use strncmp(3) instead of memcmp(3) to avoid reading past end of the string if it is empty (*str == '\0'). This bug is _not_ a buffer overflow. Discussed with: Sunny (via IM) ------------------------------------------------------------------------
-
- 06 May, 2008 3 commits
-
-
calvin authored
Implement the system tablespace tagging described on the wiki: https://svn.innodb.com/innobase/InnoDB_version_and_feature_compatibility A brief description of the changes: * The file format tag will be saved in the trx system page, starting at (UNIV_PAGE_SIZE - 16) for 8 bytes. * The configuration parameter innodb_file_format_check is introduced. This variable can be set to on/off and any of the supported file formats in the configuration file, but can only be set to any of the supported file formats during runtime. The default is on. * During table create/open, check the current file format against the max in file_format_max. If the current file format is newer, update file_format_max and tag the system tablespace with the newer one in a normal mtr. * During startup, write the tag to the error log and check it against DICT_TF_FORMAT_MAX. Refuse to start with error, if -- DICT_TF_FORMAT_MAX < the tag, and -- innodb_file_format_check is ON Print out a warning , if -- DICT_TF_FORMAT_MAX < the tag, but -- innodb_file_format_check is off * The system tablespace tag is re-settable using: set innodb_file_format_check = <file_format> Approved by: Sunny
-
vasil authored
Add InnoDB version in these places: * In INFORMATION_SCHEMA.PLUGINS.PLUGIN_VERSION, only 1.2 out of 1.2.3 because MySQL supports only one dot there * At startup: "080501 12:28:06 InnoDB Plugin 1.0.1 started; log sequence number 46509" * In a server variable innodb_version; mysql> select @@innodb_version; +------------------+ | @@innodb_version | +------------------+ | 1.0.1 | +------------------+ Approved by: Sunny
-
vasil authored
Allow InnoDB I_S plugins to be installed when InnoDB storage engine is not installed but show empty tables when SELECTing from them in this case. Set srv_was_started to FALSE at the end of innobase_shutdown_for_mysql() so the I_S plugins can detect if InnoDB is uninstalled. This is needed to workaround the MySQL Bug#36399 Double free bug when INFORMATION_SCHEMA plugin init function fails and is more flexible as it allows I_S plugins to be installed before the InnoDB plugin and detects if the latter is uninstalled after this. Approved by: Heikki
-
- 29 Apr, 2008 1 commit
-
-
vasil authored
Fix Mantis issue#34 https://svn.innodb.com/mantis/view.php?id=34 "I_S plugins should refuse to load if the storage engine plugin is not loaded" and MySQL Bug#36310 http://bugs.mysql.com/36310 "InnoDB plugin crash" * Make srv_was_started public * Set srv_was_started at the end of innobase_start_or_create_for_mysql() so it is not set to TRUE if innodb encounters some startup error * Refuse to start any of the I_S plugins if srv_was_started is not TRUE Approved by: Heikki
-
- 17 Mar, 2008 1 commit
-
-
marko authored
-
- 10 Mar, 2008 1 commit
-
-
marko authored
variable innodb_file_format. Implement file format version stamping of *.ibd files and SYS_TABLES.TYPE. This change breaks introduces an incompatible change for for compressed tables. We can do this, as we have not released yet. innodb-zip.test: Add tests for stricter KEY_BLOCK_SIZE and ROW_FORMAT checks. DICT_TF_COMPRESSED_MASK, DICT_TF_COMPRESSED_SHIFT: Replace with DICT_TF_ZSSIZE_MASK, DICT_TF_ZSSIZE_SHIFT. DICT_TF_FORMAT_MASK, DICT_TF_FORMAT_SHIFT, DICT_TF_FORMAT_51, DICT_TF_FORMAT_ZIP: File format version, stored in table->flags, in the .ibd file header, and in SYS_TABLES.TYPE. dict_create_sys_tables_tuple(): Write the table flags to SYS_TABLES.TYPE if the format is at least DICT_TF_FORMAT_ZIP. For old formats (DICT_TF_FORMAT_51), write DICT_TABLE_ORDINARY as the table type. DB_TABLE_ZIP_NO_IBD: Remove the error code. The error handling is done in ha_innodb.cc; as a failsafe measure, dict_build_table_def_step() will silently clear the compression and format flags instead of returning this error. dict_mem_table_create(): Assert that no extra bits are set in the flags. dict_sys_tables_get_zip_size(): Rename to dict_sys_tables_get_flags(). Check all flag bits, and return ULINT_UNDEFINED if the combination is unsupported. dict_boot(): Document the SYS_TABLES columns N_COLS and TYPE. dict_table_get_format(), dict_table_set_format(), dict_table_flags_to_zip_size(): New accessors to table->flags. dtuple_convert_big_rec(): Introduce the auxiliary variables local_len, local_prefix_len. Store a 768-byte prefix locally if the file format is less than DICT_TF_FORMAT_ZIP. dtuple_convert_back_big_rec(): Restore the columns. srv_file_format: New variable: innodb_file_format. fil_create_new_single_table_tablespace(): Replace the parameter zip_size with table->flags. fil_open_single_table_tablespace(): Replace the parameter zip_size_in_k with table->flags. Check the flags. fil_space_struct, fil_space_create(), fil_op_write_log(): Replace zip_size with flags. fil_node_open_file(): Note a TODO item for InnoDB Hot Backup. Check that the tablespace flags match. fil_space_get_zip_size(): Rename to fil_space_get_flags(). Add a wrapper for fil_space_get_zip_size(). fsp_header_get_flags(): New function. fsp_header_init_fields(): Replace zip_size with flags. FSP_SPACE_FLAGS: New name for the tablespace flags. This field used to be called FSP_PAGE_ZIP_SIZE, or FSP_LOWEST_NO_WRITE. It has always been written as 0 in MySQL/InnoDB versions 4.1 to 5.1. MLOG_ZIP_FILE_CREATE: Rename to MLOG_FILE_CREATE2. Add a 32-bit parameter for the tablespace flags. ha_innobase::create(): Check the table attributes ROW_FORMAT and KEY_BLOCK_SIZE. Issue errors if they are inappropriate, or warnings if the inherited attributes (in ALTER TABLE) will be ignored. PAGE_ZIP_MIN_SIZE_SHIFT: New constant: the 2-logarithm of PAGE_ZIP_MIN_SIZE.
-
- 07 Mar, 2008 1 commit
-
-
marko authored
There is one consideration: fil_init() chooses the tablespace hash size based on the initial value of srv_file_per_table. However, this is nothing new: InnoDB could be started with innodb_file_per_table=0 even though *.ibd files exist. srv_file_per_table: Declare as my_bool instead of ibool, because MYSQL_SYSVAR_BOOL() expects a pointer to my_bool. Document the variable also in srv0srv.h. innobase_start_or_create_for_mysql(): Note why it is OK to temporarily clear srv_file_per_table. innobase_file_per_table: Remove.
-
- 05 Mar, 2008 1 commit
-
-
marko authored
Remove the redundant parameter "space".
-
- 06 Feb, 2008 1 commit
-
-
marko authored
symbols. Use it for all definitions of non-static variables and functions. lexyy.c, make_flex.sh: Declare yylex as UNIV_INTERN, not static. It is referenced from pars0grm.c. Actually, according to nm .libs/ha_innodb.so|grep -w '[ABCE-TVXYZ]' the following symbols are still global: * The vtable for class ha_innodb * pars0grm.c: The function yyparse() and the variables yychar, yylval, yynerrs The required changes to the Bison-generated file pars0grm.c will be addressed in a separate commit, which will add a script similar to make_flex.sh. The class ha_innodb is renamed from class ha_innobase by a #define. Thus, there will be no clash with the builtin InnoDB. However, there will be some overhead for invoking virtual methods of class ha_innodb. Ideas for making the vtable hidden are welcome. -fvisibility=hidden is not available in GCC 3.
-
- 16 Jan, 2008 1 commit
-
-
marko authored
buf_pool_free(): New function: Free all chunks of the buffer pool. innobase_shutdown_for_mysql(): Call buf_pool_free() right before ut_free_all_mem().
-