Subject Re: [Firebird-Architect] Digest Number 959
Author Kevin Berry
Thanks Ann. Nice theory but....

Here are two serial GUIDs (i.e. produced a split
second apart from one another on my system):

255DAB3A-E481-4F8B-BE8A-EEB079DA9101
63ECDA6A-4906-4F54-8F54-D6C73386E989

Try to spot the bits they have in common. ;-)

Microsoft started out by making GUIDs serial but....
as the Melissa author discovered... this allowed
people to determine which machine produced the GUIDs.
See reference below (section titled "Algorithm"):

http://en.wikipedia.org/wiki/GUID

Of course, if you're using some other algorithm that
is not the Microsoft one then I guess this could still
hold true. However, I like to assign a GUID by a
system call and using the value in my objects
directly... rather than waiting for the database to
assign one and then having to retrieve it from some
output var. This has the added benefit of objects in
memory having unique IDs even if they haven't been
stored in the database yet.

Cheers,
Kevin.

--- "Ann W. Harrison" <aharrison@...> wrote:
> > "reversed GUID" sounds like something you
> > made up?
>
> A GUID is a string of bytes that is "guaranteed" to
> be unique. It
> starts with a counter and adds factors that are
> constant for a
> particular computer. Firebird uses prefix
> compression on its indexes,
> so having the constant part first reduces the size
> of indexes by a lot.
>
> Regards,
> Ann




__________________________________
Do you Yahoo!?
Yahoo! Small Business - Try our new resources site!
http://smallbusiness.yahoo.com/resources/