1. 01 Nov, 2007 3 commits
    • marko's avatar
      branches/zip: Allow the symbols in the dynamic InnoDB plugin to be · cf98f660
      marko authored
      redefined so that the dynamic plugin can replace the builtin InnoDB
      in MySQL 5.1.
      
      ha_innodb.cc, handler0alter.cc: #include "univ.i" before any other InnoDB
      header files or before defining any symbols
      
      innodb_redefine.h: New file, to contain a mapping of symbols.  The idea
      is that this file will be replaced in the build process; because this
      is a large file that can be generated automatically, it does not make sense
      to keep it under version control.
      
      univ.i: #include "innodb_redefine.h" and #define ha_innobase ha_innodb
      
      Makefile.am (ha_innodb_la_CXXFLAGS): Remove -Dha_innobase=ha_innodb
      
      NOTE: there are still some issues in the source code.  One known issue is
      the #undef mutex_free in sync0sync.h, which will cause the plugin to call the
      function mutex_free in the builtin InnoDB.  The preprocessor symbols defined
      in innodb_redefine.h must not be undefined or redefined anywhere in the code.
      cf98f660
    • marko's avatar
      branches/zip: Remove the parameter innodb_dynamic, and always call the · 418d050f
      marko authored
      plugin "InnoDB", not "InnoDBzip".
      
      We can disable the builtin InnoDB by mysqld --skip-innodb.  If the
      builtin InnoDB is not disabled, installing the InnoDB plugin by the same
      name will not work.
      
      innodb_plugin_init(): Ignore differences in the PLUGIN_VAR_READONLY flag.
      418d050f
    • marko's avatar
      branches/zip: Remove warnings for BUILD/compile-... --warning-mode=pedantic. · 1bfa27fb
      marko authored
      ha_innobase::write_row(): The printf format %p expects const void*.
      
      STRUCT_FLD: Do not use the GCC extension when __STRICT_ANSI__ is defined.
      
      row_merge_read_clustered_index(): Compound initializers must not contain
      variables.  Assign to struct fields instead.
      1bfa27fb
  2. 31 Oct, 2007 11 commits
  3. 30 Oct, 2007 3 commits
  4. 29 Oct, 2007 4 commits
    • marko's avatar
      branches/zip: trx_rollback_or_clean_all_without_sess(): Distinguish · 7d5f2f84
      marko authored
      recovered transactions from new ones.  Until r1594, they were distinguished
      by trx->sess == NULL.
      
      trx_t: Add the bitfield is_recovered.
      
      trx_lists_init_at_db_start(): Set trx->is_recovered.
      
      trx_create(): Initialize trx->is_recovered = 0.
      
      trx_print(): Display information about trx->is_recovered.
      
      trx_rollback_or_clean_all_without_sess(): Skip new transactions.
      Protect all accesses of trx_sys->trx_list with kernel_mutex.
      
      trx_roll_crash_recv_trx, trx_roll_max_undo_no, trx_roll_progress_printed_pct:
      Made these variables static.
      7d5f2f84
    • marko's avatar
      branches/zip: row_merge_drop_temp_indexes(): Use COMMIT WORK instead of · b1d3192f
      marko authored
      trx_commit_for_mysql().
      b1d3192f
    • marko's avatar
      a877fffc
    • vasil's avatar
      branches/zip: · 0028e8d1
      vasil authored
      Add innodb_locks.lock_data column and some relevant tests.
      For record locks this column represents the ordering fields of the
      locked row in a human readable, SQL-valid, format.
      
      Approved by:	Marko
      0028e8d1
  5. 26 Oct, 2007 5 commits
  6. 25 Oct, 2007 7 commits
  7. 24 Oct, 2007 3 commits
    • marko's avatar
      branches/zip: Merge 1937:2015 from trunk. · 0d6bfafd
      marko authored
      0d6bfafd
    • marko's avatar
      branches/zip: Remove some unnecessary memory references in the master thread. · 03fcaeec
      marko authored
      srv_print_thread_releases, srv_print_lock_waits, srv_print_buf_io,
      srv_print_log_io, srv_print_latch_waits: Define these variables as
      constants (FALSE), unless UNIV_DEBUG is defined.  These variables
      are never assigned to, and they are initialized to FALSE.  It could
      be useful to set them when debugging InnoDB.
      
      srv_slot_t: Fuse the fields type, in_use, suspended to a single machine word.
      
      srv_meter[], srv_meter_low_water[], srv_meter_high_water[],
      srv_meter_high_water2[], srv_meter_foreground[]: Enclose these arrays
      inside #if 0.  The arrays are essentially constants that do not affect
      the control flow.
      
      enum srv_thread_type: New enum, to replace the #defines SRV_COM, ...
      Enclose the unused values SRV_BUFFER, SRV_RECOVERY, SRV_INSERT
      inside #if 0, so that some arrays and loops can be reduced.
      03fcaeec
    • marko's avatar
  8. 23 Oct, 2007 1 commit
  9. 22 Oct, 2007 3 commits