1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

Merge bk-internal.mysql.com:/home/bk/mysql-5.1-runtime

into  dipika.(none):/opt/local/work/mysql-5.1-2pc-opt-merge-push
This commit is contained in:
kostja@dipika.(none)
2008-02-19 14:53:22 +03:00
27 changed files with 2514 additions and 249 deletions

View File

@ -689,7 +689,8 @@ private:
struct st_savepoint {
struct st_savepoint *prev;
char *name;
uint length, nht;
uint length;
Ha_trx_info *ha_list;
};
enum xa_states {XA_NOTR=0, XA_ACTIVE, XA_IDLE, XA_PREPARED};
@ -1095,6 +1096,33 @@ private:
};
/**
Storage engine specific thread local data.
*/
struct Ha_data
{
/**
Storage engine specific thread local data.
Lifetime: one user connection.
*/
void *ha_ptr;
/**
0: Life time: one statement within a transaction. If @@autocommit is
on, also represents the entire transaction.
@sa trans_register_ha()
1: Life time: one transaction within a connection.
If the storage engine does not participate in a transaction,
this should not be used.
@sa trans_register_ha()
*/
Ha_trx_info ha_info[2];
Ha_data() :ha_ptr(NULL) {}
};
/**
@class THD
For each client connection we create a separate thread with THD serving as
@ -1234,7 +1262,7 @@ public:
uint in_sub_stmt;
/* container for handler's private per-connection data */
void *ha_data[MAX_HA];
Ha_data ha_data[MAX_HA];
#ifndef MYSQL_CLIENT
int binlog_setup_trx_data();