Stefan! This is like holding all your eyelids apart and shouting out for somebody with a sharp stick! ;)

Watcha gonna do when you add a third server?

er.. lemme see... Multiply all OIDs by three and allocate new OIDs modulo three?


Why not make the OID a composite of server ID and sequence? Even if these were both packed in the same 64 bits, just so you keep it a *little bit nasty*, and then maybe just get one eye poked out! ;)

(You could get away with a byte for the server ID, leaving masses of bits for the item ID.)

Best wishes!


On 22 May 2008, at 14:49, Stefan H. Holek wrote:

Hi Russ,

This is correct. I should have mentioned that the two servers are configured so that server A creates odd, server B even sequence numbers. This makes the duplicate id error pretty mysterious, IMO ;-)


On 22.05.2008, at 13:15, Russ Ferriday wrote:

I have not read the reference, but it seems that this scheme can never work without keys (OIDs) being qualified by which master they originated on. Otherwise one of the mySQLs would need to be responsible for handing out unique oids. You need an OID origination namespace for each master.

Stefan H. Holek

Russ Ferriday - Topia Systems - Open Source content management with Plone and Zope [EMAIL PROTECTED] - office: +44 2076 1777588 - mobile: +44 7789 338868 - skype: ferriday

For more information about ZODB, see the ZODB Wiki:

ZODB-Dev mailing list  -

Reply via email to