~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to plugin/innobase/include/log0log.h

Merge initial InnoDB+ import.

This was applied by generating a patch between MySQL 5.1.50 InnoDB plugin and
the just-merged innodb+ from mysql-trunk revision-id: vasil.dimov@oracle.com-20100422110752-1zowoqxel5xx3z2e

Then, some manual merge resolving and it worked. This should make it much
easier to merge the rest of InnoDB 1.1 and 1.2 from the mysql tree using
my bzr-reapply script.

This takes us to InnoDB 1.1.1(ish).

Show diffs side-by-side

added added

removed removed

Lines of Context:
763
763
#ifndef UNIV_HOTBACKUP
764
764
        mutex_t         mutex;          /*!< mutex protecting the log */
765
765
#endif /* !UNIV_HOTBACKUP */
 
766
 
 
767
        mutex_t         log_flush_order_mutex;/*!< mutex to serialize access to
 
768
                                        the flush list when we are putting
 
769
                                        dirty blocks in the list. The idea
 
770
                                        behind this mutex is to be able
 
771
                                        to release log_sys->mutex during
 
772
                                        mtr_commit and still ensure that
 
773
                                        insertions in the flush_list happen
 
774
                                        in the LSN order. */
766
775
        byte*           buf_ptr;        /* unaligned log buffer */
767
776
        byte*           buf;            /*!< log buffer */
768
777
        ulint           buf_size;       /*!< log buffer size in bytes */
952
961
#endif /* UNIV_LOG_ARCHIVE */
953
962
};
954
963
 
 
964
/** Test if flush order mutex is owned. */
 
965
#define log_flush_order_mutex_own()     \
 
966
        mutex_own(&log_sys->log_flush_order_mutex)
 
967
 
 
968
/** Acquire the flush order mutex. */
 
969
#define log_flush_order_mutex_enter() do {              \
 
970
        mutex_enter(&log_sys->log_flush_order_mutex);   \
 
971
} while (0)
 
972
/** Release the flush order mutex. */
 
973
# define log_flush_order_mutex_exit() do {              \
 
974
        mutex_exit(&log_sys->log_flush_order_mutex);    \
 
975
} while (0)
 
976
 
955
977
#ifdef UNIV_LOG_ARCHIVE
956
978
/** Archiving state @{ */
957
979
#define LOG_ARCH_ON             71