← Back to team overview

drizzle-discuss team mailing list archive

Re: VOTE PLEASE - Drizzle Replication - Group ID vs. Global Transaction ID

 

if i get it right. Replacing a "globally unique id" with a "local id" is a
good move.

my vote is for you.
++

why because: it is futuristic..
Eric Day had a blog post regarding eventually consistent databases.
even if drizzle is hard consistent inside..it may not be true if we think
about geographically distributed databases (say, many independent Drizzles
instances) talking to each other.
In a highly distributed environment, eventual consistency is something
unavoidable.
and in my humble opinion globally unique transaction id is not making much
meaning and this move is in a right direction.

by the way. the name "group id" is again confusing. automatically the
question comes "group of what?".
any better name for it?

Thank you,
Jobin.


On Wed, Dec 23, 2009 at 8:46 PM, Jay Pipes <Jay.Pipes@xxxxxxx> wrote:

> Hi all,
>
> I'd like to get some consensus votes to solidify the terminology around
> something that is soon to hit Drizzle's replication system:
>
> A way to uniquely identify a specific Transaction in a global replication
> environment.
>
> There are two different sets of terms in use regarding the above
> functionality, and I'd like to be able to settle on one set or the other.
>
> Indeed, if one looks at Google's implementation of the above functionality
> for MySQL 5.0, the terms "group id" and "global transaction ID" seem to be
> freely intermingled.  Even the URL and title of the Google FAQ on the
> subject/patch have contradicting terms!:
>
> http://code.google.com/p/google-mysql-tools/wiki/GlobalTransactionIds
>
> Note the URL says "Global Transaction IDs" and the page title says "Global
> Group IDs".  Very confusing to me.  Anyone else?
>
> I'd like to settle this confusion and just start referring to this
> functionality by a single term: "Group ID"
>
> The reason is that the group ID is actually *not* a global identifier. The
> global identifier is actually the server ID *plus* the group ID, and
> therefore referring to the group ID as the global transaction ID is a bit of
> a misnomer.
>
> I would like to change the TransactionContext message format from this:
>
> message TransactionContext
> {
>  required uint32 server_id = 1; /* Unique identifier of a server */
>  required uint64 transaction_id = 2;/*Globally-unique transaction ID */
>  required uint64 start_timestamp = 3;
>  required uint64 end_timestamp = 4;
> }
>
> to this:
>
> message TransactionContext
> {
>  required uint32 server_id = 1; /* Unique identifier of a server */
>  required uint64 group_id = 2;/* Unique ID of trx on this server */
>  required uint64 start_timestamp = 3;
>  required uint64 end_timestamp = 4;
> }
>
> Please let me know if this is OK with folks.  Thanks!
>
> Jay
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~drizzle-discuss<https://launchpad.net/%7Edrizzle-discuss>
> Post to     : drizzle-discuss@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~drizzle-discuss<https://launchpad.net/%7Edrizzle-discuss>
> More help   : https://help.launchpad.net/ListHelp
>

Follow ups

References