MySQL 5.6.14 Source Code Document
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ha_prototypes.h File Reference
#include "my_dbug.h"
#include "mysqld_error.h"
#include "my_compare.h"
#include "my_sys.h"
#include "m_string.h"
#include "debug_sync.h"
#include "trx0types.h"
#include "m_ctype.h"
Include dependency graph for ha_prototypes.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Enumerations

enum  ib_log_level_t { IB_LOG_LEVEL_INFO, IB_LOG_LEVEL_WARN, IB_LOG_LEVEL_ERROR, IB_LOG_LEVEL_FATAL }

Functions

UNIV_INTERN ulint innobase_convert_string (void *to, ulint to_length, CHARSET_INFO *to_cs, const void *from, ulint from_length, CHARSET_INFO *from_cs, uint *errors)
UNIV_INTERN ulint innobase_raw_format (const char *data, ulint data_len, ulint charset_coll, char *buf, ulint buf_size)
UNIV_INTERN void innobase_invalidate_query_cache (trx_t *trx, const char *full_name, ulint full_name_len)
UNIV_INTERN char * innobase_convert_name (char *buf, ulint buflen, const char *id, ulint idlen, THD *thd, ibool table_id)
UNIV_INTERN ibool thd_is_replication_slave_thread (THD *thd)
UNIV_INTERN enum
durability_properties 
thd_requested_durability (const THD *thd) __attribute__((nonnull
UNIV_INTERN ibool thd_has_edited_nontrans_tables (THD *thd)
UNIV_INTERN void innobase_mysql_print_thd (FILE *f, THD *thd, uint max_query_len)
UNIV_INTERN int innobase_mysql_cmp (int mysql_type, uint charset_number, const unsigned char *a, unsigned int a_length, const unsigned char *b, unsigned int b_length) __attribute__((nonnull
UNIV_INTERN ulint get_innobase_type_from_mysql_type (ulint *unsigned_flag, const void *field) __attribute__((nonnull))
UNIV_INTERN void innobase_get_cset_width (ulint cset, ulint *mbminlen, ulint *mbmaxlen)
UNIV_INTERN int innobase_strcasecmp (const char *a, const char *b)
UNIV_INTERN int innobase_wildcasecmp (const char *a, const char *b)
UNIV_INTERN const char * innobase_basename (const char *path_name)
UNIV_INTERN ibool thd_is_select (const THD *thd)
UNIV_INTERN void innobase_convert_from_table_id (struct charset_info_st *cs, char *to, const char *from, ulint len)
UNIV_INTERN void innobase_convert_from_id (struct charset_info_st *cs, char *to, const char *from, ulint len)
UNIV_INTERN void innobase_casedn_str (char *a)
UNIV_INTERN struct
charset_info_st
innobase_get_charset (THD *thd)
UNIV_INTERN const char * innobase_get_stmt (THD *thd, size_t *length) __attribute__((nonnull))
UNIV_INTERN ulint innobase_get_at_most_n_mbchars (ulint charset_id, ulint prefix_len, ulint data_len, const char *str)
UNIV_INTERN enum icp_result innobase_index_cond (void *file) __attribute__((nonnull
UNIV_INTERN ibool thd_supports_xa (THD *thd)
UNIV_INTERN ulong thd_lock_wait_timeout (THD *thd)
UNIV_INTERN void thd_set_lock_wait_time (THD *thd, ulint value)
UNIV_INTERN ulint innobase_get_table_cache_size (void)
UNIV_INTERN ulint innobase_get_lower_case_table_names (void)
UNIV_INTERN int innobase_close_thd (THD *thd)
UNIV_INTERN ulint innobase_mysql_fts_get_token (CHARSET_INFO *charset, const byte *start, const byte *end, fts_string_t *token, ulint *offset)
UNIV_INTERN int innobase_fts_text_case_cmp (const void *cs, const void *p1, const void *p2)
UNIV_INTERN int innobase_fts_string_cmp (const void *cs, const void *p1, const void *p2)
UNIV_INTERN CHARSET_INFOinnobase_get_fts_charset (int mysql_type, uint charset_number)
UNIV_INTERN ibool thd_trx_is_read_only (THD *thd)
UNIV_INTERN ibool thd_trx_is_auto_commit (THD *thd)
UNIV_INTERN void innobase_format_name (char *buf, ulint buflen, const char *name, ibool is_index_name) __attribute__((nonnull))
UNIV_INTERN void ib_errf (THD *thd, ib_log_level_t level, ib_uint32_t code, const char *format,...) __attribute__((format(printf
UNIV_INTERN void UNIV_INTERN void ib_senderrf (THD *thd, ib_log_level_t level, ib_uint32_t code,...)
UNIV_INTERN void ib_logf (ib_log_level_t level, const char *format,...) __attribute__((format(printf
UNIV_INTERN void UNIV_INTERN
const char * 
server_get_hostname ()
UNIV_INTERN const char * innobase_get_err_msg (int error_code)
UNIV_INTERN ulonglong innobase_next_autoinc (ulonglong current, ulonglong need, ulonglong step, ulonglong offset, ulonglong max_value) __attribute__((pure
UNIV_INTERN ulonglong innobase_get_int_col_max_value (const Field *field) __attribute__((nonnull
UNIV_INTERN my_bool innobase_check_identifier_length (const char *id)
uint innobase_convert_to_system_charset (char *to, const char *from, ulint len, uint *errors)
uint innobase_convert_to_filename_charset (char *to, const char *from, ulint len)

Variables

UNIV_INTERN enum
durability_properties 
warn_unused_result
UNIV_INTERN ulonglong pure

Detailed Description

Prototypes for global functions in ha_innodb.cc that are called by InnoDB C code

Created 5/11/2006 Osku Salerma

Definition in file ha_prototypes.h.

Enumeration Type Documentation

Corresponds to Sql_condition:enum_warning_level.

Definition at line 459 of file ha_prototypes.h.

Function Documentation

UNIV_INTERN ulint get_innobase_type_from_mysql_type ( ulint *  unsigned_flag,
const void *  f 
)

Converts a MySQL type to an InnoDB type. Note that this function returns the 'mtype' of InnoDB. InnoDB differentiates between MySQL's old <= 4.1 VARCHAR and the new true VARCHAR in >= 5.0.3 by the 'prtype'.

Returns
DATA_BINARY, DATA_VARCHAR, ...
Parameters
unsigned_flagout: DATA_UNSIGNED if an 'unsigned type'; at least ENUM and SET, and unsigned integer types are 'unsigned types'
fin: MySQL Field

Definition at line 5472 of file ha_innodb.cc.

UNIV_INTERN void ib_errf ( THD *  thd,
ib_log_level_t  level,
ib_uint32_t  code,
const char *  format,
  ... 
)

Use this when the args are first converted to a formatted string and then passed to the format string from errmsg-utf8.txt. The error message format must be: "Some string ... %s".

Push a warning message to the client, it is a wrapper around:

void push_warning_printf( THD *thd, Sql_condition::enum_warning_level level, uint code, const char *format, ...);

Parameters
thdin/out: session
levelin: warning level
codeMySQL error code
formatprintf format
UNIV_INTERN void ib_logf ( ib_log_level_t  level,
const char *  format,
  ... 
)

Write a message to the MySQL log, prefixed with "InnoDB: ". Wrapper around sql_print_information()

Parameters
levelin: warning level
formatprintf format
UNIV_INTERN void UNIV_INTERN void ib_senderrf ( THD *  thd,
ib_log_level_t  level,
ib_uint32_t  code,
  ... 
)

Use this when the args are passed to the format string from errmsg-utf8.txt directly as is.

Push a warning message to the client, it is a wrapper around:

void push_warning_printf( THD *thd, Sql_condition::enum_warning_level level, uint code, const char *format, ...);Args

Use this when the args are passed to the format string from errmsg-utf8.txt directly as is.

Push a warning message to the client, it is a wrapper around:

void push_warning_printf( THD *thd, Sql_condition::enum_warning_level level, uint code, const char *format, ...);

Parameters
thdin/out: session
levelin: warning level
codeMySQL error code

Definition at line 16735 of file ha_innodb.cc.

Here is the call graph for this function:

Here is the caller graph for this function:

UNIV_INTERN const char* innobase_basename ( const char *  path_name)

Strip dir name from a full path name and return only its file name.

Returns
file name or "null" if no file name in: full path name

Strip dir name from a full path name and return only the file name

Returns
file name or "null" if no file name
Parameters
path_namein: full path name

Definition at line 1688 of file ha_innodb.cc.

Here is the caller graph for this function:

UNIV_INTERN void innobase_casedn_str ( char *  a)

Makes all characters in a NUL-terminated UTF-8 string lower case. in/out: string to put in lower case

Makes all characters in a NUL-terminated UTF-8 string lower case.

Parameters
ain/out: string to put in lower case

Definition at line 1701 of file ha_innodb.cc.

Here is the caller graph for this function:

UNIV_INTERN int innobase_close_thd ( THD *  thd)

Frees a possible InnoDB trx object associated with the current THD.

Returns
0 or error number in: MySQL thread handle for which to close the connection

Frees a possible InnoDB trx object associated with the current THD.

Returns
0 or error number
Parameters
thdin: handle to the MySQL thread of the user whose resources should be free'd

Definition at line 3826 of file ha_innodb.cc.

Here is the caller graph for this function:

UNIV_INTERN void innobase_convert_from_id ( struct charset_info_st cs,
char *  to,
const char *  from,
ulint  len 
)

Converts an identifier to UTF-8. in: length of 'to', in bytes; should be at least 3 * strlen(to) + 1

Converts an identifier to UTF-8.

Parameters
csin: the 'from' character set
toout: converted identifier
fromin: identifier to convert
lenin: length of 'to', in bytes

Definition at line 1634 of file ha_innodb.cc.

UNIV_INTERN void innobase_convert_from_table_id ( struct charset_info_st cs,
char *  to,
const char *  from,
ulint  len 
)

Converts an identifier to a table name. in: length of 'to', in bytes; should be at least 5 * strlen(to) + 1

Converts an identifier to a table name.

Parameters
csin: the 'from' character set
toout: converted identifier
fromin: identifier to convert
lenin: length of 'to', in bytes

Definition at line 1593 of file ha_innodb.cc.

UNIV_INTERN char* innobase_convert_name ( char *  buf,
ulint  buflen,
const char *  id,
ulint  idlen,
THD *  thd,
ibool  table_id 
)

Convert a table or index name to the MySQL system_charset_info (UTF-8) and quote it if needed.

Returns
pointer to the end of buf in: TRUE=id is a table or database name; FALSE=id is an index name

Convert a table or index name to the MySQL system_charset_info (UTF-8) and quote it if needed.

Returns
pointer to the end of buf
Parameters
bufout: buffer for converted identifier
buflenin: length of buf, in bytes
idin: identifier to convert
idlenin: length of id, in bytes
thdin: MySQL connection thread, or NULL
table_idin: TRUE=id is a table or database name; FALSE=id is an index name

Definition at line 2557 of file ha_innodb.cc.

Here is the caller graph for this function:

UNIV_INTERN ulint innobase_convert_string ( void *  to,
ulint  to_length,
CHARSET_INFO to_cs,
const void *  from,
ulint  from_length,
CHARSET_INFO from_cs,
uint *  errors 
)

Wrapper around MySQL's copy_and_convert function.

Returns
number of bytes copied to 'to' out: number of errors encountered during the conversion

Wrapper around MySQL's copy_and_convert function.

Returns
number of bytes copied to 'to'
Parameters
toout: converted string
to_lengthin: number of bytes reserved for the converted string
to_csin: character set to convert to
fromin: string to convert
from_lengthin: number of bytes to convert
from_csin: character set to convert from
errorsout: number of errors encountered during the conversion

Definition at line 1833 of file ha_innodb.cc.

Here is the caller graph for this function:

UNIV_INTERN void innobase_format_name ( char *  buf,
ulint  buflen,
const char *  name,
ibool  is_index_name 
)

A wrapper function of innobase_convert_name(), convert a table or index name to the MySQL system_charset_info (UTF-8) and quote it if needed.

Returns
pointer to the end of buf
Parameters
bufout: buffer for converted identifier
buflenin: length of buf, in bytes
namein: index or table name to format
is_index_namein: index name

Definition at line 2613 of file ha_innodb.cc.

Here is the call graph for this function:

Here is the caller graph for this function:

UNIV_INTERN int innobase_fts_string_cmp ( const void *  cs,
const void *  p1,
const void *  p2 
)

compare two character string according to their charset. in: node

compare two character string according to their charset.

Parameters
csin: Character set
p1in: key
p2in: node

Definition at line 5353 of file ha_innodb.cc.

UNIV_INTERN int innobase_fts_text_case_cmp ( const void *  cs,
const void *  p1,
const void *  p2 
)

compare two character string case insensitively according to their charset. in: node

compare two character string case insensitively according to their charset.

Parameters
csin: Character set
p1in: key
p2in: node

Definition at line 5280 of file ha_innodb.cc.

UNIV_INTERN ulint innobase_get_at_most_n_mbchars ( ulint  charset_id,
ulint  prefix_len,
ulint  data_len,
const char *  str 
)

This function is used to find the storage length in bytes of the first n characters for prefix indexes using a multibyte character set. The function finds charset information and returns length of prefix_len characters in the index field in bytes.

Returns
number of bytes occupied by the first n characters in: character string
Parameters
charset_idin: character set id
prefix_lenin: prefix length in bytes of the index (this has to be divided by mbmaxlen to get the number of CHARACTERS n in the prefix)
data_lenin: length of the string in bytes

Here is the caller graph for this function:

UNIV_INTERN struct charset_info_st* innobase_get_charset ( THD *  mysql_thd)
read

Determines the connection character set.

Returns
connection character set in: MySQL thread handle

Determines the connection character set.

Returns
connection character set
Parameters
mysql_thdin: MySQL thread handle

Definition at line 1713 of file ha_innodb.cc.

Here is the caller graph for this function:

UNIV_INTERN void innobase_get_cset_width ( ulint  cset,
ulint *  mbminlen,
ulint *  mbmaxlen 
)

Get the variable length bounds of the given character set. out: maximum length of a char (in bytes)

Get the variable length bounds of the given character set.

Parameters
csetin: MySQL charset-collation code
mbminlenout: minimum length of a char (in bytes)
mbmaxlenout: maximum length of a char (in bytes)

Definition at line 1550 of file ha_innodb.cc.

UNIV_INTERN const char* innobase_get_err_msg ( int  error_code)

Get the error message format string.

Returns
the format string or 0 if not found. in: MySQL error code

Get the error message format string.

Returns
the format string or 0 if not found.
Parameters
error_codein: MySQL error code

Definition at line 1539 of file ha_innodb.cc.

Here is the caller graph for this function:

UNIV_INTERN CHARSET_INFO* innobase_get_fts_charset ( int  mysql_type,
uint  charset_number 
)

Get FTS field charset info from the field's prtype

Returns
charset info in: number of the charset

Get the next token from the given string and store it in *token.

Parameters
mysql_typein: MySQL type
charset_numberin: number of the charset

Definition at line 5182 of file ha_innodb.cc.

Here is the caller graph for this function:

UNIV_INTERN ulonglong innobase_get_int_col_max_value ( const Field field)

Get the upper limit of the MySQL integral and floating-point type.

Returns
maximum allowed value for the field
Parameters
fieldin: MySQL field
UNIV_INTERN ulint innobase_get_lower_case_table_names ( void  )

Get the current setting of the lower_case_table_names global parameter from mysqld.cc. We do a dirty read because for one there is no synchronization object and secondly there is little harm in doing so even if we get a torn read.

Returns
value of lower_case_table_names

Definition at line 1758 of file ha_innodb.cc.

Here is the caller graph for this function:

UNIV_INTERN const char* innobase_get_stmt ( THD *  thd,
size_t *  length 
)

Determines the current SQL statement.

Returns
SQL statement string
Parameters
thdin: MySQL thread handle
lengthout: length of the SQL statement

Definition at line 1725 of file ha_innodb.cc.

Here is the caller graph for this function:

UNIV_INTERN ulint innobase_get_table_cache_size ( void  )

Get the current setting of the table_cache_size global parameter. We do a dirty read because for one there is no synchronization object and secondly there is little harm in doing so even if we get a torn read.

Returns
SQL statement string

Get the current setting of the table_def_size global parameter. We do a dirty read because for one there is no synchronization object and secondly there is little harm in doing so even if we get a torn read.

Returns
value of table_def_size

Definition at line 1744 of file ha_innodb.cc.

UNIV_INTERN enum icp_result innobase_index_cond ( void *  file)

InnoDB index push-down condition check

Returns
ICP_NO_MATCH, ICP_MATCH, or ICP_OUT_OF_RANGE
Parameters
filein/out: pointer to ha_innobase
UNIV_INTERN void innobase_invalidate_query_cache ( trx_t trx,
const char *  full_name,
ulint  full_name_len 
)

Invalidates the MySQL query cache for the table. in: full name length where also the null chars count

Invalidates the MySQL query cache for the table.

Parameters
trxin: transaction which modifies the table
full_namein: concatenation of database name, null char NUL, table name, null char NUL; NOTE that in Windows this is always in LOWER CASE!
full_name_lenin: full name length where also the null chars count

Definition at line 2441 of file ha_innodb.cc.

UNIV_INTERN int innobase_mysql_cmp ( int  mysql_type,
uint  charset_number,
const unsigned char *  a,
unsigned int  a_length,
const unsigned char *  b,
unsigned int  b_length 
)

InnoDB uses this function to compare two data fields for which the data type is such that we must use MySQL code to compare them.

Returns
1, 0, -1, if a is greater, equal, less than b, respectively
Parameters
mysql_typein: MySQL type
charset_numberin: number of the charset
ain: data field
a_lengthin: data field length, not UNIV_SQL_NULL
bin: data field
b_lengthin: data field length, not UNIV_SQL_NULL

Definition at line 5104 of file ha_innodb.cc.

UNIV_INTERN ulint innobase_mysql_fts_get_token ( CHARSET_INFO cs,
const byte *  start,
const byte *  end,
fts_string_t token,
ulint *  offset 
)

Get the next token from the given string and store it in *token. out: offset to token, measured as characters from 'start'

Get the next token from the given string and store it in *token. It is mostly copied from MyISAM's doc parsing function ft_simple_get_word()

Returns
length of string processed
Parameters
csin: Character set
startin: start of text
endin: one character past end of text
tokenout: token's text
offsetout: offset to token, measured as characters from 'start'

Definition at line 5399 of file ha_innodb.cc.

Here is the caller graph for this function:

UNIV_INTERN void innobase_mysql_print_thd ( FILE *  f,
THD *  thd,
uint  max_query_len 
)

Prints info of a THD object (== user session thread) to the given file. in: max query length to print, or 0 to use the default max length

Prints info of a THD object (== user session thread) to the given file.

Parameters
fin: output stream
thdin: MySQL THD object
max_query_lenin: max query length to print, or 0 to use the default max length

Definition at line 1520 of file ha_innodb.cc.

UNIV_INTERN ulonglong innobase_next_autoinc ( ulonglong  current,
ulonglong  need,
ulonglong  step,
ulonglong  offset,
ulonglong  max_value 
)

Compute the next autoinc value.

For MySQL replication the autoincrement values can be partitioned among the nodes. The offset is the start or origin of the autoincrement value for a particular node. For n nodes the increment will be n and the offset will be in the interval [1, n]. The formula tries to allocate the next value for a particular node.

Note: This function is also called with increment set to the number of values we want to reserve for multi-value inserts e.g.,

    INSERT INTO T VALUES(), (), ();

innobase_next_autoinc() will be called with increment set to 3 where autoinc_lock_mode != TRADITIONAL because we want to reserve 3 values for the multi-value INSERT above.

Returns
the next value
Parameters
currentin: Current value
needin: count of values needed
stepin: AUTOINC increment step
offsetin: AUTOINC offset
max_valuein: max value for type
UNIV_INTERN ulint innobase_raw_format ( const char *  data,
ulint  data_len,
ulint  charset_coll,
char *  buf,
ulint  buf_size 
)

Formats the raw data in "data" (in InnoDB on-disk format) that is of type DATA_(CHAR|VARCHAR|MYSQL|VARMYSQL) using "charset_coll" and writes the result to "buf". The result is converted to "system_charset_info". Not more than "buf_size" bytes are written to "buf". The result is always NUL-terminated (provided buf_size > 0) and the number of bytes that were written to "buf" is returned (including the terminating NUL).

Returns
number of bytes that were written in: output buffer size in bytes

Formats the raw data in "data" (in InnoDB on-disk format) that is of type DATA_(CHAR|VARCHAR|MYSQL|VARMYSQL) using "charset_coll" and writes the result to "buf". The result is converted to "system_charset_info". Not more than "buf_size" bytes are written to "buf". The result is always NUL-terminated (provided buf_size > 0) and the number of bytes that were written to "buf" is returned (including the terminating NUL).

Returns
number of bytes that were written
Parameters
datain: raw data
data_lenin: raw data length in bytes
charset_collin: charset collation
bufout: output buffer
buf_sizein: output buffer size in bytes

Definition at line 1863 of file ha_innodb.cc.

Here is the call graph for this function:

UNIV_INTERN int innobase_strcasecmp ( const char *  a,
const char *  b 
)

Compares NUL-terminated UTF-8 strings case insensitively.

Returns
0 if a=b, <0 if a<b, >1 if a>b in: second string to compare

Compares NUL-terminated UTF-8 strings case insensitively.

Returns
0 if a=b, <0 if a<b, >1 if a>b
Parameters
ain: first string to compare
bin: second string to compare

Definition at line 1651 of file ha_innodb.cc.

Here is the caller graph for this function:

UNIV_INTERN int innobase_wildcasecmp ( const char *  a,
const char *  b 
)

Compares NUL-terminated UTF-8 strings case insensitively. The second string contains wildcards.

Returns
0 if a match is found, 1 if not in: wildcard string to compare

Compares NUL-terminated UTF-8 strings case insensitively. The second string contains wildcards.

Returns
0 if a match is found, 1 if not
Parameters
ain: string to compare
bin: wildcard string to compare

Definition at line 1675 of file ha_innodb.cc.

UNIV_INTERN void UNIV_INTERN const char* server_get_hostname ( )

Returns the NUL terminated value of glob_hostname.

Returns
pointer to glob_hostname.

Definition at line 1207 of file ha_innodb.cc.

UNIV_INTERN ibool thd_has_edited_nontrans_tables ( THD *  thd)

Returns true if the transaction this thread is processing has edited non-transactional tables. Used by the deadlock detector when deciding which transaction to rollback in case of a deadlock - we try to avoid rolling back transactions that have edited non-transactional tables.

Returns
true if non-transactional tables have been edited in: thread handle

Returns true if the transaction this thread is processing has edited non-transactional tables. Used by the deadlock detector when deciding which transaction to rollback in case of a deadlock - we try to avoid rolling back transactions that have edited non-transactional tables.

Returns
true if non-transactional tables have been edited
Parameters
thdin: thread handle

Definition at line 1221 of file ha_innodb.cc.

UNIV_INTERN ibool thd_is_replication_slave_thread ( THD *  thd)

Returns true if the thread is the replication thread on the slave server. Used in srv_conc_enter_innodb() to determine if the thread should be allowed to enter InnoDB - the replication thread is treated differently than other threads. Also used in srv_conc_force_exit_innodb().

Returns
true if thd is the replication thread in: thread handle

Returns true if the thread is the replication thread on the slave server. Used in srv_conc_enter_innodb() to determine if the thread should be allowed to enter InnoDB - the replication thread is treated differently than other threads. Also used in srv_conc_force_exit_innodb().

Returns
true if thd is the replication thread
Parameters
thdin: thread handle

Definition at line 1083 of file ha_innodb.cc.

Here is the caller graph for this function:

UNIV_INTERN ibool thd_is_select ( const THD *  thd)

Returns true if the thread is executing a SELECT statement.

Returns
true if thd is executing SELECT in: thread handle

Returns true if the thread is executing a SELECT statement.

Returns
true if thd is executing SELECT
Parameters
thdin: thread handle

Definition at line 1233 of file ha_innodb.cc.

Here is the caller graph for this function:

UNIV_INTERN ulong thd_lock_wait_timeout ( THD *  thd)

Returns the lock wait timeout for the current connection.

Returns
the lock wait timeout, in seconds in: thread handle, or NULL to query the global innodb_lock_wait_timeout

Returns the lock wait timeout for the current connection.

Returns
the lock wait timeout, in seconds
Parameters
thdin: thread handle, or NULL to query the global innodb_lock_wait_timeout

Definition at line 1259 of file ha_innodb.cc.

UNIV_INTERN enum durability_properties thd_requested_durability ( const THD *  thd)

Gets information on the durability property requested by thread. Used when writing either a prepare or commit record to the log buffer.

Returns
the durability property.
Parameters
thdin: thread handle
UNIV_INTERN void thd_set_lock_wait_time ( THD *  thd,
ulint  value 
)

Add up the time waited for the lock for the current query. in: time waited for the lock

Set the time waited for the lock for the current query.

Parameters
thdin/out: thread handle
valuein: time waited for the lock

Definition at line 1273 of file ha_innodb.cc.

Here is the caller graph for this function:

UNIV_INTERN ibool thd_supports_xa ( THD *  thd)

Returns true if the thread supports XA, global value of innodb_supports_xa if thd is NULL.

Returns
true if thd supports XA in: thread handle, or NULL to query the global innodb_supports_xa

Returns true if the thread supports XA, global value of innodb_supports_xa if thd is NULL.

Returns
true if thd has XA support
Parameters
thdin: thread handle, or NULL to query the global innodb_supports_xa

Definition at line 1246 of file ha_innodb.cc.

UNIV_INTERN ibool thd_trx_is_auto_commit ( THD *  thd)

Check if the transaction is an auto-commit transaction. TRUE also implies that it is a SELECT (read-only) transaction.

Returns
true if the transaction is an auto commit read-only transaction. in: thread handle, or NULL

Check if the transaction is an auto-commit transaction. TRUE also implies that it is a SELECT (read-only) transaction.

Returns
true if the transaction is an auto commit read-only transaction.
Parameters
thdin: thread handle, can be NULL

Definition at line 1121 of file ha_innodb.cc.

Here is the call graph for this function:

UNIV_INTERN ibool thd_trx_is_read_only ( THD *  thd)

Returns true if transaction should be flagged as read-only.

Returns
true if the thd is marked as read-only in/out: thread handle

Returns true if transaction should be flagged as read-only.

Returns
true if the thd is marked as read-only
Parameters
thdin: thread handle

Definition at line 1108 of file ha_innodb.cc.