List:Commits« Previous MessageNext Message »
From:marko.makela Date:April 11 2012 10:26am
Subject:bzr push into mysql-trunk branch (marko.makela:3861 to 3862) Bug#13945538
View as plain text  
 3862 Marko Mäkelä	2012-04-11
      Bug#13945538 INCONSISTENT USE OF DATA TYPES IN INNODB ERROR REPORTING
      
      InnoDB used to use a mixture of int, ulint, and enum db_err for error
      codes. This patch changes it to use dberr_t (an enum) everywhere, so
      that errors are caught more easily. For example, one could forget to
      convert an InnoDB error code to an MySQL error code, or do the
      conversion twice. Also, gdb will nicely display the symbolic names of
      error codes when the enum type is being used.
      
      Also, the definition of trx->mysql_thd as void* instead of THD* causes
      unnecessary type casts.
      
      While we are at it, use ut_strerr() for reporting InnoDB internal
      errors to the user. In this way, the enum values can be changed at
      will.
      
      rb:1026 approved by Jimmy Yang

    modified:
      storage/innobase/api/api0api.cc
      storage/innobase/api/api0misc.cc
      storage/innobase/btr/btr0btr.cc
      storage/innobase/btr/btr0cur.cc
      storage/innobase/buf/buf0buf.cc
      storage/innobase/buf/buf0dump.cc
      storage/innobase/buf/buf0rea.cc
      storage/innobase/dict/dict0boot.cc
      storage/innobase/dict/dict0crea.cc
      storage/innobase/dict/dict0dict.cc
      storage/innobase/dict/dict0load.cc
      storage/innobase/dict/dict0stats.cc
      storage/innobase/fil/fil0fil.cc
      storage/innobase/fts/fts0ast.cc
      storage/innobase/fts/fts0config.cc
      storage/innobase/fts/fts0fts.cc
      storage/innobase/fts/fts0opt.cc
      storage/innobase/fts/fts0que.cc
      storage/innobase/fts/fts0sql.cc
      storage/innobase/handler/ha_innodb.cc
      storage/innobase/handler/ha_innodb.h
      storage/innobase/handler/handler0alter.cc
      storage/innobase/ibuf/ibuf0ibuf.cc
      storage/innobase/include/api0api.h
      storage/innobase/include/api0misc.h
      storage/innobase/include/btr0cur.h
      storage/innobase/include/buf0buf.h
      storage/innobase/include/db0err.h
      storage/innobase/include/dict0crea.h
      storage/innobase/include/dict0dict.h
      storage/innobase/include/dict0load.h
      storage/innobase/include/dict0stats.h
      storage/innobase/include/fil0fil.h
      storage/innobase/include/fts0ast.h
      storage/innobase/include/fts0fts.h
      storage/innobase/include/fts0priv.h
      storage/innobase/include/ha_prototypes.h
      storage/innobase/include/lock0lock.h
      storage/innobase/include/log0recv.h
      storage/innobase/include/que0que.h
      storage/innobase/include/read0read.h
      storage/innobase/include/read0read.ic
      storage/innobase/include/row0ftsort.h
      storage/innobase/include/row0ins.h
      storage/innobase/include/row0log.h
      storage/innobase/include/row0merge.h
      storage/innobase/include/row0mysql.h
      storage/innobase/include/row0sel.h
      storage/innobase/include/row0uins.h
      storage/innobase/include/row0umod.h
      storage/innobase/include/row0upd.h
      storage/innobase/include/row0vers.h
      storage/innobase/include/srv0srv.h
      storage/innobase/include/srv0start.h
      storage/innobase/include/trx0rec.h
      storage/innobase/include/trx0roll.h
      storage/innobase/include/trx0sys.h
      storage/innobase/include/trx0trx.h
      storage/innobase/include/trx0undo.h
      storage/innobase/include/ut0ut.h
      storage/innobase/lock/lock0lock.cc
      storage/innobase/log/log0recv.cc
      storage/innobase/os/os0file.cc
      storage/innobase/que/que0que.cc
      storage/innobase/row/row0ftsort.cc
      storage/innobase/row/row0ins.cc
      storage/innobase/row/row0log.cc
      storage/innobase/row/row0merge.cc
      storage/innobase/row/row0mysql.cc
      storage/innobase/row/row0purge.cc
      storage/innobase/row/row0sel.cc
      storage/innobase/row/row0uins.cc
      storage/innobase/row/row0umod.cc
      storage/innobase/row/row0undo.cc
      storage/innobase/row/row0upd.cc
      storage/innobase/row/row0vers.cc
      storage/innobase/srv/srv0conc.cc
      storage/innobase/srv/srv0srv.cc
      storage/innobase/srv/srv0start.cc
      storage/innobase/trx/trx0i_s.cc
      storage/innobase/trx/trx0rec.cc
      storage/innobase/trx/trx0roll.cc
      storage/innobase/trx/trx0sys.cc
      storage/innobase/trx/trx0trx.cc
      storage/innobase/trx/trx0undo.cc
      storage/innobase/ut/ut0ut.cc
 3861 Luis Soares	2012-04-11 [merge]
      BUG#13877432
      
      Automerged approved bzr bundle into latest mysql-trunk.

    added:
      mysql-test/suite/binlog/r/binlog_gtid_cache.result
      mysql-test/suite/binlog/t/binlog_gtid_cache-master.opt
      mysql-test/suite/binlog/t/binlog_gtid_cache.test
    modified:
      sql/binlog.cc

Diff too large for email (10707 lines, the limit is 10000).
No bundle (reason: useless for push emails).
Thread
bzr push into mysql-trunk branch (marko.makela:3861 to 3862) Bug#13945538marko.makela11 Apr