~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/rpl_rli.h

  • Committer: Monty Taylor
  • Date: 2008-09-16 00:00:48 UTC
  • mto: This revision was merged to the branch mainline in revision 391.
  • Revision ID: monty@inaugust.com-20080916000048-3rvrv3gv9l0ad3gs
Fixed copyright headers in drizzled/

Show diffs side-by-side

added added

removed removed

Lines of Context:
20
20
#ifndef RPL_RLI_H
21
21
#define RPL_RLI_H
22
22
 
23
 
#include <string>
24
23
#include "rpl_tblmap.h"
25
24
#include "rpl_reporting.h"
26
25
#include "rpl_utility.h"
153
152
    happen when, for example, the relay log gets rotated because of
154
153
    max_binlog_size.
155
154
  */
156
 
  std::string group_relay_log_name;
 
155
  char group_relay_log_name[FN_REFLEN];
157
156
  uint64_t group_relay_log_pos;
158
 
  std::string event_relay_log_name;
 
157
  char event_relay_log_name[FN_REFLEN];
159
158
  uint64_t event_relay_log_pos;
160
159
  uint64_t future_event_relay_log_pos;
161
160
 
170
169
     binlog the log_pos that comes with each event is the position of the
171
170
     beginning of the group.
172
171
  */
173
 
  std::string group_master_log_name;
 
172
  char group_master_log_name[FN_REFLEN];
174
173
  volatile my_off_t group_master_log_pos;
175
174
 
176
175
  /*
204
203
  volatile uint32_t slave_run_id;               /* Incremented on slave start */
205
204
  pthread_mutex_t log_space_lock;
206
205
  pthread_cond_t log_space_cond;
207
 
  Session * sql_session;
 
206
  THD * sql_thd;
208
207
  int32_t events_till_abort;
209
208
 
210
209
  /* if not set, the value of other members of the structure are undefined */
238
237
    UNTIL_LOG_NAMES_CMP_EQUAL= 0, UNTIL_LOG_NAMES_CMP_GREATER= 1
239
238
  } until_log_names_cmp_result;
240
239
 
 
240
  char cached_charset[6];
241
241
  /*
242
242
    trans_retries varies between 0 to slave_transaction_retries and counts how
243
243
    many times the slave has retried the present transaction; gets reset to 0
289
289
  void inc_group_relay_log_pos(uint64_t log_pos,
290
290
                               bool skip_lock=0);
291
291
 
292
 
  int32_t wait_for_pos(Session* session, String* log_name, int64_t log_pos, 
 
292
  int32_t wait_for_pos(THD* thd, String* log_name, int64_t log_pos, 
293
293
                   int64_t timeout);
294
294
  void close_temporary_tables();
295
295
 
314
314
    return (td);
315
315
  }
316
316
 
317
 
  void cleanup_context(Session *, bool);
 
317
  /*
 
318
    Last charset (6 bytes) seen by slave SQL thread is cached here; it helps
 
319
    the thread save 3 get_charset() per Query_log_event if the charset is not
 
320
    changing from event to event (common situation).
 
321
    When the 6 bytes are equal to 0 is used to mean "cache is invalidated".
 
322
  */
 
323
  void cached_charset_invalidate();
 
324
  bool cached_charset_compare(char *charset) const;
 
325
 
 
326
  void cleanup_context(THD *, bool);
318
327
  void clear_tables_to_lock();
319
328
 
320
329
  /*
391
400
     @retval false Replication thread is currently not inside a group
392
401
   */
393
402
  bool is_in_group() const {
394
 
    return (sql_session->options & OPTION_BEGIN) ||
 
403
    return (sql_thd->options & OPTION_BEGIN) ||
395
404
      (m_flags & (1UL << IN_STMT));
396
405
  }
397
406