Hi Andrew,
Some early testing feedback:
I've tried to use the cvs tarball of epics base-3.14 dated last week
and the latest redundant IOC from DESY.
I used that rtwdInterface that you provided. But some of the functions
are still not in the base:
scanRunThread
scanPauseThread
castcpRun
castcpPause
castcpRun
castcpPause
beaconStart
beaconPause
and one more question is about the red_update field. It is still need
for CCE operation so we still had to apply some little patch to the
base to get the CCE compiled.
I attach the patch file.
I saw the discussion about that field, but did not see what was the
final solution.
Everything else seems to be OK.
Artem.
On Fri, Jul 4, 2008 at 8:00 AM, Andrew Johnson <[email protected]> wrote:
> Hi Bernd,
>
> On Thursday 03 July 2008 09:01:13 Schoeneburg, Bernd wrote:
>>
>> I want to remind you that we are highly interested in base modifications
>> for IOC redundancy.
>
> As I have said to you before, the next release *will* allow you to implement
> redundancy without modifying Base, although not using the patches that you
> developed.
>
>> The proposed model gives maximal freedom of usage.
>>
>> -- If the define (REDUNDANCY) is not done, Episc runs as usual and no
>> additional object code is loaded.
>
> I am less worried about adding a small amount of additional code than I am of
> getting the plug-in interface wrong. I do not like your conditional
> compilation solution because it makes the result hard to test (you have to
> completely rebuild Base with the conditional in the other state to be
> completely sure it compiles properly), and it requires me to ship a copy of
> your rmtDrvIf.h file with Base (which makes it hard for you to make any
> changes to that file).
>
> I am attaching a file which should become part of the Redundancy Monitor and
> hooks into the interfaces I am providing. You won't be able to use this yet
> because I haven't committed the parallel changes that are needed to Base, but
> it shows you that it will be possible to make an IOC redundant without adding
> more code to Base. This source code compiles without errors on my system,
> although it won't link because I don't have the rmtRegister() routine or the
> rest of the RMT subsystem. It is likely that you'll have to make some
> changes, but I think the majority of this code is correct.
>
> I accept that you need to be able to control some of the internal threads
> inside the IOC, and as a result I am adding a series of 'xxxPause()'
> and 'xxxRun()' routines to the various internal subsystems, as well as adding
> top level 'iocBuild', 'iocPause' and 'iocRun' commands (in a redundant IOC
> you will use 'iocBuild' instead of 'iocInit' in the startup script, ensuring
> that the server and scan tasks are not started). While doing that I have
> also been cleaning up the startup and shutdown procedure for the IOC, so
> there is some advantage in this work for others as well.
>
> After some more tests early next week, I will be committing my changes to CVS
> and you'll be able to try them out.
>
> - Andrew
> --
> Talk is cheap. Show me the code. -- Linus Torvalds
>
- Replies:
- Re: IOC Redundancy in R3.14.10 Andrew Johnson
- References:
- IOC Redundancy in R3.14.10 Schoeneburg, Bernd
- Re: IOC Redundancy in R3.14.10 Andrew Johnson
- Navigate by Date:
- Prev:
Re: EPICS Base's support on Phar Lap ETS Andrew Johnson
- Next:
Re: IOC Redundancy in R3.14.10 Andrew Johnson
- 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: IOC Redundancy in R3.14.10 Schoeneburg, Bernd
- Next:
Re: IOC Redundancy in R3.14.10 Andrew Johnson
- Index:
2002
2003
2004
2005
2006
2007
<2008>
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
|