~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/session.h

  • Committer: Jay Pipes
  • Date: 2009-10-07 23:59:47 UTC
  • mto: (1234.1.1 push) (1237.2.10 push)
  • mto: This revision was merged to the branch mainline in revision 1193.
  • Revision ID: jpipes@serialcoder-20091007235947-18simrecnzwv8t1q
Phase 2 new replication work:

* Removes old replication.proto file, old command_transform library
* Removes use of korr.h macro calls in favor of GPB's CodedOutputStream
  API.
* Updates transaction_log, default_replicator, and filtered_replicator module
  to use new Transaction message.
* Updates ReplicationServices to construct the new Transaction messages and
  associated Statement sub-messages
* Corrects transaction boundaries.  AUTOCOMMIT now works properly, and I have
  added a new test case to verify AUTOCOMMIT variable modification of the way
  in which Transaction messages are bundled up and sent across to replicators.

Show diffs side-by-side

added added

removed removed

Lines of Context:
49
49
class Client;
50
50
class Scheduler;
51
51
}
 
52
namespace message
 
53
{
 
54
class Transaction;
 
55
class Statement;
 
56
}
52
57
}
53
58
 
54
59
class Lex_input_stream;
1233
1238
    return connect_microseconds;
1234
1239
  }
1235
1240
 
 
1241
  /**
 
1242
   * Returns a pointer to the active Transaction message for this
 
1243
   * Session being managed by the ReplicationServices component, or
 
1244
   * NULL if no active message.
 
1245
   */
 
1246
  drizzled::message::Transaction *getTransactionMessage() const
 
1247
  {
 
1248
    return transaction_message;
 
1249
  }
 
1250
 
 
1251
  /**
 
1252
   * Returns a pointer to the active Statement message for this
 
1253
   * Session, or NULL if no active message.
 
1254
   */
 
1255
  drizzled::message::Statement *getStatementMessage() const
 
1256
  {
 
1257
    return statement_message;
 
1258
  }
 
1259
 
 
1260
  /**
 
1261
   * Sets the active transaction message used by the ReplicationServices
 
1262
   * component.
 
1263
   *
 
1264
   * @param[in] Pointer to the message
 
1265
   */
 
1266
  void setTransactionMessage(drizzled::message::Transaction *in_message)
 
1267
  {
 
1268
    transaction_message= in_message;
 
1269
  }
 
1270
 
 
1271
  /**
 
1272
   * Sets the active statement message used by the ReplicationServices
 
1273
   * component.
 
1274
   *
 
1275
   * @param[in] Pointer to the message
 
1276
   */
 
1277
  void setStatementMessage(drizzled::message::Statement *in_message)
 
1278
  {
 
1279
    statement_message= in_message;
 
1280
  }
1236
1281
private:
 
1282
  /** Pointers to memory managed by the ReplicationServices component */
 
1283
  drizzled::message::Transaction *transaction_message;
 
1284
  drizzled::message::Statement *statement_message;
1237
1285
  /** Microsecond timestamp of when Session connected */
1238
1286
  uint64_t connect_microseconds;
1239
1287
  const char *proc_info;