[reSIProcate] upcoming changes to DUM's RegistrationPersistenceManager and ServerRegistration
Alan Hawrylyshen
alan at jasomi.com
Tue Jun 7 12:27:26 CDT 2005
On Jun 6, 2005, at 15.04, Adam Roach wrote:
>
>
>> I propose refactoring ServerRegistration so we pass a list of
>> operations (memory owned by DUM) in the
>> ServerRegistrationHandlers. The application can inspect the
>> operations and/or the original request. accept() would cause the
>> list of operations to be committed to the database (quick lock/
>> unlock), return the current list of registered contacts (with and
>> without instances), and free the list of operations. reject()
>> would free the memory.
>
> That sounds like a good design to me.
>
>
>> We can use the same operations for updates from other cluster
>> members when we add high availability.
>>
>
> Yep. I like that.
>
My comments:
One thing to pay attention to is the lock-lifetime vis
exceptions. We don't want to open ourselves to a situation where
throwing an exception results in a lock-state leak. This is arguably
a weakness of mixing procedural and OO design in general. This isn't
an apple-pie post either -- there have been resource and exception
safety issues in the past; they are surprisingly easy to introduce.
;-)
Cheers,
Alan
a l a n a t j a s o m i d o t c o m
More information about the resiprocate-devel
mailing list