On Mon, 2019-09-02 at 08:57 -0700, Michael Davidsaver wrote:
> The main concern I see is locking and callbacks. Current calls to asTrap*() happen
> without holding the record lock. The asTrap* functions can't be moved entirely into
> dbChannelPut() without changing this.
>
> This concern is also why I can't trivially add asTrap*() calls to QSRV. The PVA to DBR
> data type conversion is currently happening under the record lock. (Not required,
> just convenient)
>
> If this were to change then some answer/plan would need to be made to address the
> possibility of deadlocks and slowdown. Maybe it is enough to say that asTrap handlers
> should never be locking records or blocking?
>
> Also, I hadn't noticed asTrapWritePvt::lock before. So many singleton locks...
In the context of caPutLog that means to read the value of the record without a lock.
That may lead to inconsistent data, in particular in the case of arrays, but for some architectures maybe even for doubles.
Extended to PVA, structures may be read inconsistently too.
However caPutLog does not read the full arrays anyway.
The original purpose of asTrap, deciding if writing is allowed, would probably not need to read the record at all.
>
>
> On 9/2/19 4:39 AM, Johnson, Andrew N. wrote:
> > I don’t think that would be trivial even for just the Trap Write calls, the dbChannel layer doesn’t have access to the asClientPVT context pointer. For the other interfaces dbChannel doesn’t know anything about the client that is requesting access. I suspect the current arrangement may be the simplest, but I haven’t looked at it too closely.
> >
> > - Andrew
> >
> >
> > > On Sep 2, 2019, at 9:08 AM, Zimoch Dirk (PSI) via Core-talk <[email protected]> wrote:
> > >
> > > On Mon, 2019-09-02 at 07:00 +0000, Zimoch Dirk (PSI) via Core-talk wrote:
> > > > Shouldn't PVA be implemented one level lower in dbChannel instead of in each network protocol?
> > >
> > > Sorry typo, I meant: Shouldn't access security be implemented in dbChannel?
> > > Dirk
>
>
- Replies:
- Re: pvPutLog? Michael Davidsaver via Core-talk
- References:
- pvPutLog? Timo Korhonen via Core-talk
- Re: pvPutLog? Zimoch Dirk (PSI) via Core-talk
- Re: pvPutLog? Michael Davidsaver via Core-talk
- Re: pvPutLog? Zimoch Dirk (PSI) via Core-talk
- Re: pvPutLog? Michael Davidsaver via Core-talk
- Re: pvPutLog? Timo Korhonen via Core-talk
- Re: pvPutLog? Michael Davidsaver via Core-talk
- Re: pvPutLog? Zimoch Dirk (PSI) via Core-talk
- Re: pvPutLog? Zimoch Dirk (PSI) via Core-talk
- Re: pvPutLog? Johnson, Andrew N. via Core-talk
- Re: pvPutLog? Michael Davidsaver via Core-talk
- Navigate by Date:
- Prev:
Re: Core-talk Digest, Vol 13, Issue 213 Basawashri Biradar via Core-talk
- Next:
Help Basawashri Biradar via Core-talk
- Index:
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: pvPutLog? Michael Davidsaver via Core-talk
- Next:
Re: pvPutLog? Michael Davidsaver via Core-talk
- Index:
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
<2019>
2020
2021
2022
2023
2024
|