An error occurred fetching the project authors.
  1. 10 Mar, 2010 1 commit
    • marko's avatar
      branches/zip: Merge revisions 6669:6788 from branches/5.1: · b8e0c522
      marko authored
        ------------------------------------------------------------------------
        r6774 | calvin | 2010-03-03 23:56:10 +0200 (Wed, 03 Mar 2010) | 2 lines
        Changed paths:
           M /branches/5.1/trx/trx0sys.c
      
        branches/5.1: fix bug#51653: outdated reference to set-variable
        Non functional change.
        ------------------------------------------------------------------------
        r6780 | vasil | 2010-03-08 19:13:20 +0200 (Mon, 08 Mar 2010) | 4 lines
        Changed paths:
           M /branches/5.1/plug.in
      
        branches/5.1:
      
        Whitespace fixup.
        ------------------------------------------------------------------------
        r6783 | jyang | 2010-03-09 17:54:14 +0200 (Tue, 09 Mar 2010) | 9 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
           M /branches/5.1/mysql-test/innodb_bug21704.result
           A /branches/5.1/mysql-test/innodb_bug47621.result
           A /branches/5.1/mysql-test/innodb_bug47621.test
      
        branches/5.1: Fix bug #47621 "MySQL and InnoDB data dictionaries
        will become out of sync when renaming columns". MySQL does not
        provide new column name information to storage engine to
        update the system table. To avoid column name mismatch, we shall
        just request a table copy for now.
      
        rb://246 approved by Marko.
        ------------------------------------------------------------------------
        r6785 | vasil | 2010-03-10 09:04:38 +0200 (Wed, 10 Mar 2010) | 11 lines
        Changed paths:
           M /branches/5.1/mysql-test/innodb_bug38231.test
      
        branches/5.1:
      
        Add the missing --reap statements in innodb_bug38231.test. Probably MySQL
        enforced the presence of those recently and the test started failing like:
      
          main.innodb_bug38231                     [ fail ]
                  Test ended at 2010-03-10 08:48:32
      
          CURRENT_TEST: main.innodb_bug38231
          mysqltest: At line 49: Cannot run query on connection between send and reap
        ------------------------------------------------------------------------
        r6788 | vasil | 2010-03-10 10:53:21 +0200 (Wed, 10 Mar 2010) | 8 lines
        Changed paths:
           M /branches/5.1/mysql-test/innodb_bug38231.test
      
        branches/5.1:
      
        In innodb_bug38231.test: replace the fragile sleep 0.2 that depends on timing
        with a more robust condition which waits for the TRUNCATE and LOCK commands
        to appear in information_schema.processlist. This could also break if there
        are other sessions executing the same SQL commands, but there are none during
        the execution of the mysql test.
        ------------------------------------------------------------------------
      b8e0c522
  2. 03 Dec, 2009 1 commit
    • pekka's avatar
      branches/zip: Minor changes which allow build with UNIV_HOTBACKUP · ea926c50
      pekka authored
      defined to succeed:
      
      include/trx0sys.h: Allow Hot Backup build to see some
                         TRX_SYS_DOUBLEWRITE_... macros. 
      trx/trx0sys.c:     Exclude trx_sys_close() function from Hot Backup build.
      log/log0recv.[ch]: Exclude recv_sys_var_init() function from Hot Backup build.
      
      This change should not affect !UNIV_HOTBACKUP build.
      ea926c50
  3. 02 Nov, 2009 1 commit
    • marko's avatar
      branches/zip: Free all resources at shutdown. Set pointers to NULL, so · 0e4ac2ba
      marko authored
      that Valgrind will not complain about freed data structures that are
      reachable via pointers.  This addresses Bug #45992 and Bug #46656.
      
      This patch is mostly based on changes copied from branches/embedded-1.0,
      mainly c5432, c3439, c3134, c2994, c2978, but also some other code was
      copied.  Some added cleanup code is specific to MySQL/InnoDB.
      
      rb://199 approved by Sunny Bains
      0e4ac2ba
  4. 14 Jul, 2009 1 commit
    • vasil's avatar
      branches/zip: Merge r5341:5497 from branches/5.1, skipping: · 4cb1a623
      vasil authored
      c5419 because it is merge from branches/zip into branches/5.1
      c5466 because the source code has been adjusted to match the MySQL
        behavior and the innodb-autoinc test does not fail in branches/zip,
        if c5466 is merged, then innodb-autoinc starts failing, Sunny suggested
        not to merge c5466.
      and resolving conflicts in c5410, c5440, c5488:
      
        ------------------------------------------------------------------------
        r5410 | marko | 2009-06-24 22:26:34 +0300 (Wed, 24 Jun 2009) | 2 lines
        Changed paths:
           M /branches/5.1/include/trx0sys.ic
           M /branches/5.1/trx/trx0purge.c
           M /branches/5.1/trx/trx0sys.c
           M /branches/5.1/trx/trx0undo.c
        
        branches/5.1: Add missing #include "mtr0log.h" to avoid warnings
        when compiling with -DUNIV_MUST_NOT_INLINE.
        ------------------------------------------------------------------------
        r5419 | marko | 2009-06-25 16:11:57 +0300 (Thu, 25 Jun 2009) | 18 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
           M /branches/5.1/mysql-test/innodb_bug42101-nonzero.result
           M /branches/5.1/mysql-test/innodb_bug42101-nonzero.test
           M /branches/5.1/mysql-test/innodb_bug42101.result
           M /branches/5.1/mysql-test/innodb_bug42101.test
        
        branches/5.1: Merge r5418 from branches/zip:
        
          ------------------------------------------------------------------------
          r5418 | marko | 2009-06-25 15:55:52 +0300 (Thu, 25 Jun 2009) | 5 lines
          Changed paths:
             M /branches/zip/ChangeLog
             M /branches/zip/handler/ha_innodb.cc
             M /branches/zip/mysql-test/innodb_bug42101-nonzero.result
             M /branches/zip/mysql-test/innodb_bug42101-nonzero.test
             M /branches/zip/mysql-test/innodb_bug42101.result
             M /branches/zip/mysql-test/innodb_bug42101.test
          
          branches/zip: Fix a race condition caused by
          SET GLOBAL innodb_commit_concurrency=DEFAULT. (Bug #45749)
          When innodb_commit_concurrency is initially set nonzero,
          DEFAULT would change it back to 0, triggering Bug #42101.
          rb://139 approved by Heikki Tuuri.
          ------------------------------------------------------------------------
        ------------------------------------------------------------------------
        r5440 | vasil | 2009-06-30 13:04:29 +0300 (Tue, 30 Jun 2009) | 8 lines
        Changed paths:
           M /branches/5.1/fil/fil0fil.c
        
        branches/5.1:
        
        Fix Bug#45814 URL reference in InnoDB server errors needs adjusting to match documentation
        
        by changing the URL from
        http://dev.mysql.com/doc/refman/5.1/en/innodb-troubleshooting.html to
        http://dev.mysql.com/doc/refman/5.1/en/innodb-troubleshooting-datadict.html
        
        ------------------------------------------------------------------------
        r5466 | vasil | 2009-07-02 10:46:45 +0300 (Thu, 02 Jul 2009) | 6 lines
        Changed paths:
           M /branches/5.1/mysql-test/innodb-autoinc.result
           M /branches/5.1/mysql-test/innodb-autoinc.test
        
        branches/5.1:
        
        Adjust the failing innodb-autoinc test to conform to the latest behavior
        of the MySQL code. The idea and the comment in innodb-autoinc.test come
        from Sunny.
        
        ------------------------------------------------------------------------
        r5488 | vasil | 2009-07-09 19:16:44 +0300 (Thu, 09 Jul 2009) | 13 lines
        Changed paths:
           M /branches/5.1/handler/ha_innodb.cc
           A /branches/5.1/mysql-test/innodb_bug21704.result
           A /branches/5.1/mysql-test/innodb_bug21704.test
        
        branches/5.1:
        
        Fix Bug#21704 Renaming column does not update FK definition
        
        by checking whether a column that participates in a FK definition is being
        renamed and denying the ALTER in this case.
        
        The patch was originally developed by Davi Arnaut <Davi.Arnaut@Sun.COM>:
        http://lists.mysql.com/commits/77714
        and was later adjusted to conform to InnoDB coding style by me (Vasil),
        I also added some more comments and moved the bug specific mysql-test to
        a separate file to make it more manageable and flexible.
        
        ------------------------------------------------------------------------
      4cb1a623
  5. 22 Jun, 2009 1 commit
  6. 27 May, 2009 1 commit
    • marko's avatar
      branches/zip: Merge revisions 4994:5148 from branches/5.1: · c08ea286
      marko authored
        ------------------------------------------------------------------------
        r5126 | vasil | 2009-05-26 16:57:12 +0300 (Tue, 26 May 2009) | 9 lines
      
        branches/5.1:
      
        Preparation for the fix of
        Bug#45097 Hang during recovery, redo logs for doublewrite buffer pages
      
        Non-functional change: move FSP_* macros from fsp0fsp.h to a new file
        fsp0types.h. This is needed in order to be able to use FSP_EXTENT_SIZE
        in mtr0log.ic.
        ------------------------------------------------------------------------
        r5127 | vasil | 2009-05-26 17:05:43 +0300 (Tue, 26 May 2009) | 9 lines
      
        branches/5.1:
      
        Preparation for the fix of
        Bug#45097 Hang during recovery, redo logs for doublewrite buffer pages
      
        Do not include unnecessary headers mtr0log.h and fut0lst.h in trx0sys.h
        and include fsp0fsp.h just before it is needed. This is needed in order
        to be able to use TRX_SYS_SPACE in mtr0log.ic.
        ------------------------------------------------------------------------
        r5128 | vasil | 2009-05-26 17:26:37 +0300 (Tue, 26 May 2009) | 7 lines
      
        branches/5.1:
      
        Fix Bug#45097 Hang during recovery, redo logs for doublewrite buffer pages
      
        Do not write redo log for the pages in the doublewrite buffer. Also, do not
        make a dummy change to the page because this is not needed.
        ------------------------------------------------------------------------
      c08ea286
  7. 26 May, 2009 1 commit
  8. 25 May, 2009 3 commits
    • marko's avatar
      branches/zip: Add @file comments, and convert decorative · 5727d980
      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
      5727d980
    • marko's avatar
    • marko's avatar
      branches/zip: Convert the function comments to Doxygen format. · 8ab5601e
      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.
      8ab5601e
  9. 20 May, 2009 1 commit
  10. 23 Mar, 2009 1 commit
  11. 12 Mar, 2009 1 commit
  12. 17 Feb, 2009 1 commit
    • vasil's avatar
      branches/zip: · 8a04bf39
      vasil authored
      * Remove old Innobase copyright lines from C source files
      * Add a reference to the GPLv2 license as recommended by the lawyers
      at Oracle Legal
      
      [Step 27/28]
      8a04bf39
  13. 23 Oct, 2008 1 commit
    • marko's avatar
      branches/zip: Clean up the file format stamping. · 6b36cc4b
      marko authored
      trx_sys_file_format_max_upgrade(): Rename from
      trx_sys_file_format_max_update().  Improve the documentation.  Add a
      const qualifier to the parameter "name".  Replace the parameter
      "flags" with "format_id", because this function should deal with file
      format identifiers, not with table flags.
      
      trx_sys_file_format_max_write(), trx_sys_file_format_max_set(): Add a
      const qualifier to the parameter "name".
      
      ha_innodb.cc: Correct the spelling in some comments: "side effect".
      Remove redundant prototypes for some static callback functions.
      
      innodb_file_format_name_update(), innodb_file_format_check_update():
      Correct the function signature.  Use appropriate pointer type conversions.
      
      MYSQL_SYSVAR_STR(file_format), MYSQL_SYSVAR_STR(file_format_check):
      Remove the type conversions from the callback function pointers.  When
      the function signatures match, no type conversion is needed.  The type
      conversions would only prevent compilation warnings for any mismatch.
      
      Approved by Sunny in rb://25.
      6b36cc4b
  14. 22 Sep, 2008 1 commit
    • marko's avatar
      branches/zip: Non-functional change: · d87663c9
      marko authored
      buf_block_dbg_add_level(block, level): Define as an empty macro when
      UNIV_SYNC_DEBUG is not defined.  Remove #ifdef UNIV_SYNC_DEBUG around
      all invocations.
      d87663c9
  15. 18 Jun, 2008 1 commit
    • inaam's avatar
      branches/zip: internal mantis issue#49 · 217272fa
      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
      
      217272fa
  16. 08 May, 2008 1 commit
  17. 06 May, 2008 1 commit
    • calvin's avatar
      branches/zip: · 61a33895
      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
      61a33895
  18. 17 Mar, 2008 1 commit
  19. 08 Feb, 2008 1 commit
  20. 06 Feb, 2008 1 commit
    • marko's avatar
      branches/zip: Introduce UNIV_INTERN, a linkage specifier for InnoDB-global · 1d1dc31a
      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.
      1d1dc31a
  21. 20 Dec, 2007 1 commit
    • vasil's avatar
      branches/zip: · 1ae59d9e
      vasil authored
      Change the output format of transaction ids from 2 32bit numbers separated
      by space to a single hex number.
      
      Suggested by:	Heikki
      Approved by:	Heikki
      1ae59d9e
  22. 30 Aug, 2007 1 commit
  23. 03 Aug, 2007 1 commit
  24. 21 Jun, 2007 1 commit
    • marko's avatar
      branches/zip: Initialize trx_dummy_sess only once. Require trx->sess to · e9351c6f
      marko authored
      be set always.
      
      trx_rollback_active(): Split from trx_rollback_or_clean_all_without_sess().
      
      row_undo_dictionary(): Do not return a value.  Assert that all operations
      succeed.
      
      row_merge_drop_index(): Remove bogus comment about void return value.
      
      trx_dummy_sess: Move the declaration from trx0roll.h to trx0trx.h,
      because the variable is defined in trx0trx.c.
      e9351c6f
  25. 18 Jan, 2007 2 commits
    • marko's avatar
    • marko's avatar
      branches/zip: Remove the fil_space_get_zip_size() call from · f116afa7
      marko authored
      buf_page_get_gen().  This saves one mutex operation per block request.
      
      buf_page_get_gen(), various macros and functions: Add parameter zip_size.
      
      btr_node_ptr_get_child(): Add parameter index.
      
      fil_space_get_latch(): Add optional output parameter zip_size.
      
      fil_space_get_zip_size(): Return 0 for space id==0, because the
      system tablespace is never compressed.
      
      fsp_header_init(): Remove the parameter zip_size.
      
      ibuf_free_excess_pages(): Remove the parameter zip_size.
      
      trx_rseg_t, trx_undo_t: Add field zip_size.
      
      xdes_lst_get_next(): Remove, unused.
      f116afa7
  26. 13 Jan, 2007 1 commit
  27. 12 Jan, 2007 2 commits
    • marko's avatar
      branches/zip: trx_sys_create_doublewrite_buf(): Revert the change of r1208. · 1e07a36b
      marko authored
      We cannot clear the page with memset(), because the page number and
      tablespace id have already been stamped on it.
      1e07a36b
    • marko's avatar
      branches/zip: Improve Valgrind instrumentation of allocated memory. · 2b82ae8c
      marko authored
      UNIV_MEM_FREE(): Declare a memory area free.
      UNIV_MEM_ALLOC(): Declare a memory area allocated (but uninitialized).
      UNIV_MEM_DESC(): Associate a memory area with a control block.
      UNIV_MEM_UNDESC(): Unassociate a control block.
      
      trx_sys_create_doublewrite_buf(): Clear the buffer with memset().
      
      buf_page_init(): Add a bogus UNIV_MEM_VALID(block->frame) to silence
      valid warnings about InnoDB data pages containing uninitialized data.
      
      buf_LRU_get_free_only(): Add UNIV_MEM_ALLOC(block->frame).
      
      buf_LRU_get_free_block(): Add UNIV_MEM_DESC(block->page.zip.data, block).
      
      buf_LRU_free_block(): Add UNIV_MEM_DESC(b->zip.data, b) when allocating
      a compressed-only control block for a compressed page.
      
      buf_LRU_block_free_non_file_page(): Replace UNIV_MEM_INVALID() with
      UNIV_MEM_FREE().
      
      buf_LRU_block_remove_hashed_page(): Add UNIV_MEM_UNDESC(bpage) when
      deallocating a compressed-only control block.  Add
      UNIV_MEM_INVALID(block->frame).  (The frame should be flagged free
      by buf_LRU_block_free_non_file_page() moments later.)
      
      buf0buddy.c: Disable some extra checks in Valgrind-instrumented builds.
      Add UNIV_MEM_VALID(), UNIV_MEM_INVALID(), UNIV_MEM_FREE(), UNIV_MEM_ALLOC()
      as necessary.
      2b82ae8c
  28. 24 Nov, 2006 1 commit
  29. 20 Oct, 2006 1 commit
  30. 12 Oct, 2006 2 commits
    • marko's avatar
      branches/zip: Reduce the number of buf_block_align() calls. · 5669dc3d
      marko authored
      btr_block_get(): New function to return buf_block_t.
      
      btr_page_alloc(), buf_page_get_release_on_io(), buf_page_get_gen(),
      buf_page_create(), fseg_create(), fseg_create_general(): Return buf_block_t.
      
      buf_page_get_known_nowait(): Expect buf_block_t instead of buf_frame_t.
      
      buf_frame_get_newest_modification(): Replace with
      buf_block_get_newest_modification().
      
      buf_page_dbg_add_level(): Replace with buf_block_dbg_add_level().
      
      buf_block_get_zip_size(): New function.
      
      buf_block_get_page_zip(): Reintroduce.
      
      recv_recover_page(): Replace page, space, page_no with block.
      
      ibuf_bitmap_page_init(): Replace page, zip_size with block.
      
      ibuf_parse_bitmap_init(): Remove the parameter zip_size.
      
      btr_search_drop_page_hash_index(): Replace page with block.
      5669dc3d
    • marko's avatar
      branches/zip: Replace buf_frame_get_page_no() and buf_frame_get_space_id() · 736a8ffb
      marko authored
      with page_get_page_no() and page_get_space_id().  We want to avoid
      buf_block_align() calls, and the page_no and space_id are now stamped
      on the pages early on.
      736a8ffb
  31. 19 Sep, 2006 1 commit
  32. 04 Sep, 2006 1 commit
  33. 29 Aug, 2006 1 commit
  34. 15 Jun, 2006 1 commit
    • marko's avatar
      branches/zip: Add parameter zip_size to fil_io(). · 97c78130
      marko authored
      fil_read(), fil_write(): Make these inlined functions in fil0fil.c.
      
      fil_write_lsn_and_arch_no_to_file(): Remove the parameter space_id and
      note that this function is to be called on the system tablespace, which
      is uncompressed.
      97c78130
  35. 30 May, 2006 1 commit
    • marko's avatar
      branches/zip: Write compressed pages to disk. · 1dd4d568
      marko authored
      os_aio_simulated_handle(): Temporarily disable os_file_check_page_trailers(),
      which cannot be invoked on compressed pages.
      
      dict_table_add_system_columns(): New function, split from
      dict_table_add_to_cache().
      
      mlog_parse_index(): Add system columns to the dummy table and identify
      DB_TRX_ID and DB_ROLL_PTR in the dummy index.
      
      buf_LRU_get_free_block(): Note that page_zip->data should be allocated from
      an aligned memory pool.
      
      buf_flush_buffered_writes(): Write compressed pages to disk.
      
      buf_flush_post_to_doublewrite_buf(): Copy compressed pages to the
      doublewrite buffer.  Zero fill any excess space.
      
      buf_flush_init_for_writing(): Treat all compressed pages the same.
      
      buf_read_page_low(): Read compressed pages from disk.
      
      buf_page_io_complete(): Process compressed pages.
      
      trx_sys_doublewrite_init_or_restore_page(): Process compressed pages.
      
      mlog_write_initial_log_record_fast(): Enable a debug printout
      #ifdef UNIV_LOG_DEBUG.
      
      fsp_header_init(), fsp_fill_free_list(): Pass the compressed page size
      to buf_page_create().
      
      page_zip_compress_write_log(): Flatten the if-else if-else logic.
      
      page_zip_parse_write_blob_ptr(): Do not test page_zip if page==NULL.
      
      page_zip_parse_write_node_ptr(): Do not test page_zip if page==NULL.
      Invoke mlog_close() correctly.
      
      row_sel_store_row_id_to_prebuilt(): Add UNIV_UNLIKELY hint to an
      assertion-like test.
      1dd4d568