On Wednesday 24 November 2010 16:44:57 Ben Franksen wrote:
>
> One way out is to restrict active putNotify requests to one per lockset,
> as Jeff proposed, and queue any further ones. Another possibility is to
> introduce "putNotify sets" (short: PN sets): each lock set is then a
> disjoint union of PN sets; these would be connected by links that cause
> processing, i.e. forward links and any input or output (DB) link with
> the PP property. This would certainly complicate the implementation; it
> is not clear to me whether it would be worth the price.
I don't think it's really practical to separate PN sets from lock sets, since
links can be accessed conditionally but the PN set calculation has no way to
know whether the conditions will be true or false so it would have to be
conservative and span all record links. PN sets are different in that they
only span forward links and inp/out links that are marked PP, but PN sets
would be quite a lot of infrastructure to add (and more IOC processing needed
whenever a link gets changed) to fix this relatively obscure problem.
One advantage to combining PN with lock sets would be that we could probably
move a couple of fields from dbCommon into the struct lockSet, and it might
simplify the dbNotify code a bit.
If anyone wants to start looking at this, they should start from the Bazaar
branch called process-get that will be merged into 3.15 at some point soon.
Marty generalized the putNotify code at the 2008 Codeathon so it's possible to
make processGet and putProcessGet requests as well as putProcess.
- Andrew
--
If a man is offered a fact which goes against his instincts, he will
scrutinize it closely, and unless the evidence is overwhelming, he will
refuse to believe it. If, on the other hand, he is offered something
which affords a reason for acting in accordance to his instincts, he
will accept it even on the slightest evidence. -- Bertrand Russell
- References:
- Re: ca_put_callback once again Tim Mooney
- RE: ca_put_callback once again Jeff Hill
- Re: ca_put_callback once again Ben Franksen
- Navigate by Date:
- Prev:
Re: Testing UIs against real databases using simulation mode J. Lewis Muir
- Next:
Re: Testing UIs against real databases using simulation mode Angus Gratton
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
<2010>
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: ca_put_callback once again Ben Franksen
- Next:
Re: ca_put_callback once again Ben Franksen
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
<2010>
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
|