Re: too many database conflicts when using ZODB with int ids and indexes
Jim Fulton <[email protected]>
| Newsgroups | gmane.comp.web.zope.zodb |
|---|---|
| Message-ID | <CAPDm-Fh-vqySCcVd1EB7e8y5APPrSE9fGCetr_irb25-iQXxAw@mail.gmail.com> |
On Fri, Nov 18, 2016 at 3:28 AM, Sanjay Rao <[email protected]> wrote: > If i use ZC.intid in place of zope.intId then how to get rid of these > subscribers in zope.intid ? You guys must have done this. > > > <subscriber handler=".removeIntIdSubscriber" /> > <subscriber handler=".addIntIdSubscriber" /> > > both the handlers are assuming that KeyReference based int id being used. > and call getId of ZC.intId by passing a KeyReference object. KeyReference > object is a wrapper object containing original object as an attribute > You have to replace them with subscribers that behave differently. Jim > > > On Thursday, 10 November 2016 20:33:55 UTC+5:30, Jason Madden wrote: >> >> >> On Nov 10, 2016, at 8:59 AM, Jim Fulton <[email protected]> wrote: >> >> At ZC, we mitigated this problem by storing persistent ids on objects and >> getting rid of the whole persistent key mechanism (which was rather >> complicated) and the persistent key -> integer id mapping. I don't >> remember if we ever released this, but looking, it doesn't seem we did. >> >> If your conflicts are in the object -> ids mapping (the internal ``ids`` >> attribute, I'd consider making a version of the utility that got rid of >> this mapping. >> >> >> Perhaps consider this utility: https://pypi.python.org/pypi/zc.intid >> > -- > You received this message because you are subscribed to the Google Groups > "zodb" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/d/optout. > -- Jim Fulton http://jimfulton.info -- You received this message because you are subscribed to the Google Groups "zodb" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.