• unknown's avatar
    Added innodb_locks_unsafe_for_binlog option. This option turns off Innodb · 238b226f
    unknown authored
      next-key locking. Using this option the locks InnoDB sets on index 
      records do not affect the ``gap'' before that index record. Thus, this option
      allows phantom problem.
    
    
    innobase/include/srv0srv.h:
      Added srv_locks_unsafe_for_binlog for innodb_locks_unsafe_for_binlog option.
    innobase/row/row0sel.c:
      If innodb_locks_unsafe_for_binlog option is used, we lock only the record, i.e. 
      next-key locking is not used. Therefore, setting lock to the index record
      do not affect the ``gap'' before that index record. Thus, this option
      allows phantom problem, because concurrent insert operations are allowed inside 
      the select range.
    innobase/srv/srv0srv.c:
      Added srv_locks_unsafe_for_binlog for innodb_locks_unsafe_for_binlog option.
    sql/ha_innodb.cc:
      Added innobase_locks_unsafe_for_binlog and srv_locks_unsafe_for_binlog for 
      innodb_locks_unsafe_for_binlog option.
    sql/ha_innodb.h:
      Added innobase_locks_unsafe_for_binlog for innodb_locks_unsafe_for_binlog option.
    sql/mysqld.cc:
      Added OPT_INNODB_LOCKS_UNSAFE_FOR_BINLOG, innobase_locks_unsafe_for_binlog for
      innodb_locks_unsafe_for_binlog option.
    sql/set_var.cc:
      Added innodb_locks_unsafe_for_binlog and innobase_locks_unsafe_for_binlog for
      innodb_locks_unsafe_for_binlog option.
    BitKeeper/etc/logging_ok:
      Logging to logging@openlogging.org accepted
    238b226f
srv0srv.c 63.8 KB