nova team mailing list archive
Mailing list archive
Re: Instance IDs and models in the ORM world
On Tue, Oct 05, 2010 at 10:02:28PM +0100, Michael Gundlach wrote:
> On Tue, Oct 5, 2010 at 2:43 PM, Jay Pipes <jaypipes@xxxxxxxxx> wrote:
> keys) across multiple nodes. A random 32-bit integer would be fine as
> long as the generating algorithm produced acceptable collision rates.
> I'm using randint(0, 2^32) atm. The chance of collision is intuitively
> something less than 1 in 1000 after adding a million instances. Ed, I
> don't see the need for a 128-bit ID when 32 bits almost suffices.
> This would be bikeshedding, except that I don't know how to make a
> larger-than-32-bit integer work in sqlalchemy without becoming
> implementation-specific. I think I read that sqlalchemy has a BIGINT type
> that's only usable with mysql, for example. If someone knows how to make
> an internal_id column that is 128 bits and happily stores itself in any
> mysql backend, I'm fine with 128 bits (and you can argue with Soren about
> it :)
This is what strings are for. I don't see any reason for the unique ID to
be an integer at the DB layer.
It sounds like everyone wants to revisit this, so let's get all these issues
into a draft blueprint and we'll have something concrete to discuss at
the summit next month.