> Wouldn't creating a 3.14 version of that library under a different
name
> (or version) - just for your client - work?
Nope!
There is a 'generic' layer in between the client and the service (e.g.
CA system) that loads a library as per the name of the service to which
a connection is requested. The functions within the library then cause a
system specific configuration to be loaded. There is a library for each
of the different service types (CA, RPC -multiple-, socket, ...) and the
functions in those have identical names and arguments (srv_open,
srv_read, srv_write, srv_ioctl, srv_event).
For instance obs_open("ao") will cause the CA interface library to be
loaded (via a symbolic link: libao_if.so ->libCA_if.so) and the open
call (srv_open) therein will then cause a set of specific data files to
be loaded, as per the service name ("ao_data_configuration"). For
obs_open("instrument_x") a totally different library is loaded (say
libinstrument_x_if.so -> libRPC_if.so) and the open function therein
(still srv_open) will load/interpret data files that will be in a
completely different format ("instrument_x_data_configuration"). The
advantage of this 'layer' is that clients need not know anything about
the various 'types' of services with which they are exchanging data (CA,
RPC, some message based format, ...): all client calls are identical;
the client's data is always in the same format, as the library functions
perform all the translations.
> I don't think the CA client
> interface changed too much between 3.13 and 3.14.
Okay, that is good :)
I will start researching the differences.
> A one-client thing would be a nice testbed for 3.14 ... and not affect
> the other parts of the system.
I can create a multi-threaded client test bed on a subnet separate from
the operational net. But, when deployment occurs multiple clients will
be affected, in some cases, there are many. Deployment will be tedious.
Thanks,
Al
-----Original Message-----
From: Ralph Lange [mailto:[email protected]]
Sent: Wednesday, April 07, 2010 9:45 AM
To: Al Honey
Cc: EPICS Tech Talk
Subject: Re: cac_select_io Segmentation fault
Wouldn't creating a 3.14 version of that library under a different name
(or version) - just for your client - work? I don't think the CA client
interface changed too much between 3.13 and 3.14.
A one-client thing would be a nice testbed for 3.14 ... and not affect
the other parts of the system.
Ralph
On Wed 07 Apr 2010 15:31:00 Al Honey wrote:
> Hi Ralph
>
> I didn't take any offense.
>
> We have a layer between our clients and all systems with whom
> inter-pocess communications occur and many of those systems are not
CA.
> That layer is effectively a library which is dynamically loaded at
> runtime. Hence, changing that library, for one CA client, will affect
a
> subset of clients. The CA library calls in that library will
undoubtedly
> have to change and I am probably still too ignorant to make those
> changes.
>
> Thanks,
> Al
>
>
- Replies:
- Re: cac_select_io Segmentation fault Andrew Johnson
- References:
- cac_select_io Segmentation fault Al Honey
- Re: cac_select_io Segmentation fault Ralph Lange
- Re: cac_select_io Segmentation fault Ralph Lange
- RE: cac_select_io Segmentation fault Al Honey
- Re: cac_select_io Segmentation fault Ralph Lange
- Navigate by Date:
- Prev:
Re: cac_select_io Segmentation fault Ralph Lange
- Next:
Re: cac_select_io Segmentation fault 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
- Navigate by Thread:
- Prev:
Re: cac_select_io Segmentation fault Ralph Lange
- Next:
Re: cac_select_io Segmentation fault 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
|