Tim,
I concur with your fundamental idea and suggest that the .RPRO
field should contain a _list_ of structures to support
multiple writes from clients during the period when PACT==1.
The naive implementation is a simple FIFO queue for write requests,
although in general this should be a priority queue.
I think EPICS should never write to any record while PACT==1. (I'd like
to say that scanLock should persist through the I/O-wait period of
asynchronous
processing, so that dbPutField could not modify any field in a lockset
while
asynchronous processing was going on in that lockset, but I don't know
enough
about the consequences of this.) Anyway, maybe .RPRO should be used not
only
to signal that a record should be reprocessed, but also to cache the
field name
and value that should be written. This would handle the problem of a
dbPutField to a record during asynchronous processing that was started by
a dbPutLink. It wouldn't necessarily handle the problem of a dbPutLink to
a record during asynchronous processing that was started by a
dbPutField, because the record that caused the dbPutLink might have gone
on to initiate
other processing sensitive to the field whose write has been postponed.
- Peregrine
--
Peregrine M. McGehee [email protected] (505) 667-3273
Sloan Digital Sky Survey / Spallation Neutron Source
MS H820, Los Alamos National Laboratory, Los Alamos, NM 87545
- Replies:
- Re: Changes to records during asynch processing Andrew Johnson
- References:
- Does DISP work for DB OUT links? Benjamin Franksen
- Re: Does DISP work for DB OUT links? Marty Kraimer
- Re: Does DISP work for DB OUT links? Benjamin Franksen
- Re: Does DISP work for DB OUT links? Marty Kraimer
- Re: Does DISP work for DB OUT links? Related question Benjamin Franksen
- Re: Does DISP work for DB OUT links? Related question Marty Kraimer
- Changes to records during asynch processing Benjamin Franksen
- Re: Changes to records during asynch processing Marty Kraimer
- Re: Changes to records during asynch processing Benjamin Franksen
- Re: Changes to records during asynch processing Marty Kraimer
- Re: Changes to records during asynch processing Tim Mooney
- Navigate by Date:
- Prev:
Re: Changes to records during asynch processing Tim Mooney
- Next:
Re: Changes to records during asynch processing Benjamin 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
- Navigate by Thread:
- Prev:
Re: Changes to records during asynch processing Tim Mooney
- Next:
Re: Changes to records during asynch processing Andrew Johnson
- 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
|