~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/message/replication.proto

  • Committer: Brian Aker
  • Date: 2009-07-29 18:35:48 UTC
  • mfrom: (1101.1.12 merge)
  • Revision ID: brian@gaz-20090729183548-yp36iwoaemfc76z0
Merging Monty (which includes new replication)

Show diffs side-by-side

added added

removed removed

Lines of Context:
18
18
message InsertRecord
19
19
{
20
20
  repeated Table.Field insert_field = 3;
21
 
  repeated string insert_value = 4;
 
21
  repeated bytes insert_value = 4;
22
22
}
23
23
 
24
24
/*
27
27
message UpdateRecord
28
28
{
29
29
  repeated Table.Field update_field = 3;
30
 
  repeated string before_value = 4;
31
 
  repeated string after_value = 5;
 
30
  repeated bytes before_value = 4;
 
31
  repeated bytes after_value = 5;
32
32
  repeated Table.Field where_field = 6;
33
 
  repeated string where_value = 7;
 
33
  repeated bytes where_value = 7;
34
34
}
35
35
 
36
36
/*
39
39
message DeleteRecord
40
40
{
41
41
  repeated Table.Field where_field = 3;
42
 
  repeated string where_value = 4;
 
42
  repeated bytes where_value = 4;
43
43
}
44
44
 
45
45
/*
86
86
  required uint64 end_timestamp = 3;
87
87
  repeated Command command = 4;
88
88
}
 
89
 
 
90
/*
 
91
 * Describes a server used in replication.  This message
 
92
 * class is passed in the Publisher::registerSubscriber()
 
93
 * and Subscriber::subscribe() methods.
 
94
 */
 
95
message Server
 
96
{
 
97
  required int32 server_id = 1; /* A unique numeric identifier for this server */
 
98
  required string ip_address = 2; /* A valid IP address */
 
99
  required uint32 port = 3; /* Port that this server is listening for replication events */
 
100
  optional string name = 4; /* Optional name for the server */
 
101
}
 
102
 
 
103
/*
 
104
 * A subscriber manifest describes the state of
 
105
 * a subscriber in replication.  This message class
 
106
 * is passed in the replication API in the 
 
107
 * drizzled::plugin::Publisher's dataIsAvailable() and
 
108
 * pullData() calls.
 
109
 */
 
110
message SubscriberManifest
 
111
{
 
112
  required int32 server_id = 1; /* Only need to pass the ID...not the whole Server message */
 
113
  required uint64 last_applied_timestamp = 2; /* The timestamp of the last time this subscriber communicated with the publisher */
 
114
  required int64 last_applied_transaction_id = 3; /* The timestamp of last applied transaction or command */
 
115
}