[Openais] Openais Digest, Vol 30, Issue 21

Amarnath Sathyanarayanan amar at nextone.com
Mon Nov 20 16:24:46 PST 2006


Hi,

We use the openais 0.70 event framework.

We observed an issue where, when the aisexec is started and the client
Connects (the client connects almost immediately after the aisexec
Is started), it is blocked on the recv. A snippet from the backtrace
Follows -

#4  0xb7fd72d8 in recvmsg () from /lib/tls/libpthread.so.0
#5  0xb7fdefd0 in saSendMsgReceiveReply () from /opt/nextone/lib/libSaEvt.so
#6  0xb7fe14de in saEvtChannelOpen () from /opt/nextone/lib/libSaEvt.so

This is not reproducible, happens sporadically. But when it does,
It happens everytime the client restarts and tries to connect.
We have a monitoring process restarting the client when it doesn't
Receive polls from the client. 

Is this a known issue? I searched the archive and hit upon defect 188,
But wasn't sure if it was related to this issue. I thought it would be
A good idea to check the list while I continued to look at the 
Problem. 

I would appreciate any help or direction.

Regards.
Amar.




-----Original Message-----
From: openais-bounces at lists.osdl.org [mailto:openais-bounces at lists.osdl.org] On Behalf Of openais-request at lists.osdl.org
Sent: Monday, November 20, 2006 10:23 AM
To: openais at lists.osdl.org
Subject: Openais Digest, Vol 30, Issue 21

Send Openais mailing list submissions to
	openais at lists.osdl.org

To subscribe or unsubscribe via the World Wide Web, visit
	https://lists.osdl.org/mailman/listinfo/openais
or, via email, send a message with subject or body 'help' to
	openais-request at lists.osdl.org

You can reach the person managing the list at
	openais-owner at lists.osdl.org

When replying, please edit your Subject line so it is more specific
than "Re: Contents of Openais digest..."


Today's Topics:

   1.  saAmfCompInstantiationLevel (Venkat Chandra)
   2. Re: saAmfCompInstantiationLevel (Anders Eriksson)
   3. Re: changing gettimeofday to times (Alejandro López)
   4. Re: changing gettimeofday to times (Fabien THOMAS)
   5. Re: changing gettimeofday to times (Fabien THOMAS)
   6. Thread model of openais? (Hans Feldt)
   7. Re: openais CsiSet Callback (Hans Feldt)


----------------------------------------------------------------------

Message: 1
Date: Sun, 19 Nov 2006 19:41:45 -0600
From: "Venkat Chandra" <venkatec at hotmail.com>
Subject: [Openais]  saAmfCompInstantiationLevel
To: Openais at lists.osdl.org
Message-ID: <BAY129-F33849CC2F47DE07AE520E0CAED0 at phx.gbl>
Content-Type: text/plain; format=flowed

Folks,

Is saAmfCompInstantiationLevel option implemented in openAis ? It does not 
seem to work and going through the code - I do not see it implemented.

Regards
Venkat

_________________________________________________________________
MSN Shopping has everything on your holiday list. Get expert picks by style, 
age, and price. Try it! 
http://shopping.msn.com/content/shp/?ctId=8000,ptnrid=176,ptnrdata=200601&tcode=wlmtagline



------------------------------

Message: 2
Date: Mon, 20 Nov 2006 08:00:39 +0100
From: Anders Eriksson <anders.s-o.eriksson at ericsson.com>
Subject: Re: [Openais] saAmfCompInstantiationLevel
To: Venkat Chandra <venkatec at hotmail.com>
Cc: Openais at lists.osdl.org
Message-ID: <45615297.6050409 at ericsson.com>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

Venkat,

No saAmfCompInstantiationLevel is not implemented yet. Actually, we are 
currently working on a patch where it will be implemented. In the file 
README.amf you find a list of what is not implemented.

Regards,
Anders Eriksson

Venkat Chandra wrote:
> Folks,
> 
> Is saAmfCompInstantiationLevel option implemented in openAis ? It does not 
> seem to work and going through the code - I do not see it implemented.
> 
> Regards
> Venkat
> 
> _________________________________________________________________
> MSN Shopping has everything on your holiday list. Get expert picks by style, 
> age, and price. Try it! 
> http://shopping.msn.com/content/shp/?ctId=8000,ptnrid=176,ptnrdata=200601&tcode=wlmtagline
> 
> _______________________________________________
> Openais mailing list
> Openais at lists.osdl.org
> https://lists.osdl.org/mailman/listinfo/openais


------------------------------

Message: 3
Date: Mon, 20 Nov 2006 13:38:33 +0100
From: Alejandro López <Alejandro.Lopez at Sun.COM>
Subject: Re: [Openais] changing gettimeofday to times
To: sdake at redhat.com
Cc: openais at lists.osdl.org
Message-ID: <4561A1C9.7080001 at Sun.COM>
Content-Type: text/plain; charset="iso-8859-1"

Hi Steven,

on Solaris you can use the function posix clock_gettime():

Realtime Library Functions                     clock_settime(3RT)

NAME
     clock_settime, clock_gettime, clock_getres - high-resolution
     clock operations

SYNOPSIS
     cc [ flag... ] file... -lrt [ library... ]
     #include <time.h>

     int clock_gettime(clockid_t clock_id, struct timespec *tp);


with clock_id CLOCK_HIGHRES:

     A clock_id of CLOCK_HIGHRES represents  the  non-adjustable,
     high-resolution  clock  for  the system. For this clock, the
     value returned by clock_gettime(3RT) represents  the  amount
     of  time  (in  seconds and nanoseconds) since some arbitrary
     time in the past; it is not correlated in  any  way  to  the
     time  of  day,  and  thus  is  not  subject  to resetting or
     drifting   by    way    of    adjtime(2),    ntp_adjtime(2),
     settimeofday(3C),  or  clock_settime().  The time source for
     this clock is the same as that for gethrtime(3C).


This function is also available on linux but the clock_id is CLOCK_MONOTONIC.





Or you could use the Solaris-specific gethrtime():


Standard C Library Functions                        gethrtime(3C)



NAME
     gethrtime, gethrvtime - get high resolution time

SYNOPSIS
     #include <sys/time.h>

     hrtime_t gethrtime(void);

     hrtime_t gethrvtime(void);

DESCRIPTION
     The gethrtime() function returns the current high-resolution
     real time. Time is expressed as nanoseconds since some arbi-
     trary time in the past; it is not correlated in any  way  to
     the  time  of  day,  and thus is not subject to resetting or
     drifting by way of adjtime(2) or settimeofday(3C).  The  hi-
     res  timer  is  ideally  suited  to  performance measurement
     tasks, where cheap, accurate interval timing is required.

     The  gethrvtime()  function  returns   the   current   high-
     resolution  LWP virtual time, expressed as total nanoseconds
     of execution time.

     The gethrtime() and gethrvtime() functions  both  return  an
     hrtime_t, which is a 64-bit (long long) signed integer.




Hope this helps.
Alejandro.



Steven Dake wrote:
> If the system time is changed while openais is running the timing system
> gets all out of wack.  This is because gettimeofday returns the current
> time, instead of the number of msec since boot and is used in the tlist
> code.
> 
> There is a mechanism to determine the number of msec since boot which
> appears to be portable.  The posix API is "times" which returns the
> number of clock ticks since system boot.
> 
> The Linux man page says times returns a time value from some time in the
> past but on linux this is the system boot time.
> 
> On BSD or Solaris, is this also the case?  I don't have the man pages to
> check these systems and would like a portable solution.  The other
> possibility is getitimer and setitimer or the posix timer_gettime
> absolute time but I think these posix APIs are not supported on all
> platforms.
> 
> Regards
> -steve
> 
> _______________________________________________
> Openais mailing list
> Openais at lists.osdl.org
> https://lists.osdl.org/mailman/listinfo/openais
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 2950 bytes
Desc: S/MIME Cryptographic Signature
Url : http://lists.osdl.org/pipermail/openais/attachments/20061120/47902300/attachment-0001.bin 

------------------------------

Message: 4
Date: Mon, 20 Nov 2006 14:54:03 +0100
From: Fabien THOMAS <fabien.thomas at netasq.com>
Subject: Re: [Openais] changing gettimeofday to times
To: Alejandro López <Alejandro.Lopez at sun.com>
Cc: openais at lists.osdl.org
Message-ID: <0E7966A4-05AE-4931-946F-FE928ECDD635 at netasq.com>
Content-Type: text/plain; charset=ISO-8859-1; delsp=yes; format=flowed

under my previous mail i incorrectly stated that clock_gettime is  
unavailable under Darwin and FreeBSD:
it exist under FreeBSD with CLOCK_MONOTONIC.

steven do you need a clock that can be converted to time of day ?

Le 20 nov. 06 à 13:38, Alejandro López a écrit :

> Hi Steven,
>
> on Solaris you can use the function posix clock_gettime():
>
> Realtime Library Functions                     clock_settime(3RT)
>
> NAME
>      clock_settime, clock_gettime, clock_getres - high-resolution
>      clock operations
>
> SYNOPSIS
>      cc [ flag... ] file... -lrt [ library... ]
>      #include <time.h>
>
>      int clock_gettime(clockid_t clock_id, struct timespec *tp);
>
>
> with clock_id CLOCK_HIGHRES:
>
>      A clock_id of CLOCK_HIGHRES represents  the  non-adjustable,
>      high-resolution  clock  for  the system. For this clock, the
>      value returned by clock_gettime(3RT) represents  the  amount
>      of  time  (in  seconds and nanoseconds) since some arbitrary
>      time in the past; it is not correlated in  any  way  to  the
>      time  of  day,  and  thus  is  not  subject  to resetting or
>      drifting   by    way    of    adjtime(2),    ntp_adjtime(2),
>      settimeofday(3C),  or  clock_settime().  The time source for
>      this clock is the same as that for gethrtime(3C).
>
>
> This function is also available on linux but the clock_id is  
> CLOCK_MONOTONIC.
>
>
>
>
>
> Or you could use the Solaris-specific gethrtime():
>
>
> Standard C Library Functions                        gethrtime(3C)
>
>
>
> NAME
>      gethrtime, gethrvtime - get high resolution time
>
> SYNOPSIS
>      #include <sys/time.h>
>
>      hrtime_t gethrtime(void);
>
>      hrtime_t gethrvtime(void);
>
> DESCRIPTION
>      The gethrtime() function returns the current high-resolution
>      real time. Time is expressed as nanoseconds since some arbi-
>      trary time in the past; it is not correlated in any  way  to
>      the  time  of  day,  and thus is not subject to resetting or
>      drifting by way of adjtime(2) or settimeofday(3C).  The  hi-
>      res  timer  is  ideally  suited  to  performance measurement
>      tasks, where cheap, accurate interval timing is required.
>
>      The  gethrvtime()  function  returns   the   current   high-
>      resolution  LWP virtual time, expressed as total nanoseconds
>      of execution time.
>
>      The gethrtime() and gethrvtime() functions  both  return  an
>      hrtime_t, which is a 64-bit (long long) signed integer.
>
>
>
>
> Hope this helps.
> Alejandro.
>
>
>
> Steven Dake wrote:
>> If the system time is changed while openais is running the timing  
>> system
>> gets all out of wack.  This is because gettimeofday returns the  
>> current
>> time, instead of the number of msec since boot and is used in the  
>> tlist
>> code.
>>
>> There is a mechanism to determine the number of msec since boot which
>> appears to be portable.  The posix API is "times" which returns the
>> number of clock ticks since system boot.
>>
>> The Linux man page says times returns a time value from some time  
>> in the
>> past but on linux this is the system boot time.
>>
>> On BSD or Solaris, is this also the case?  I don't have the man  
>> pages to
>> check these systems and would like a portable solution.  The other
>> possibility is getitimer and setitimer or the posix timer_gettime
>> absolute time but I think these posix APIs are not supported on all
>> platforms.
>>
>> Regards
>> -steve
>>
>> _______________________________________________
>> Openais mailing list
>> Openais at lists.osdl.org
>> https://lists.osdl.org/mailman/listinfo/openais
> _______________________________________________
> Openais mailing list
> Openais at lists.osdl.org
> https://lists.osdl.org/mailman/listinfo/openais




------------------------------

Message: 5
Date: Mon, 20 Nov 2006 15:30:12 +0100
From: Fabien THOMAS <fabien.thomas at netasq.com>
Subject: Re: [Openais] changing gettimeofday to times
To: Fabien THOMAS <fabien.thomas at netasq.com>
Cc: openais at lists.osdl.org
Message-ID: <C36B06F1-67E8-47BD-9744-D063B1D78BF9 at netasq.com>
Content-Type: text/plain; charset=ISO-8859-1; delsp=yes; format=flowed

under darwin:
clock_get_time
The clock_get_time function returns the current time kept by a clock.  
The value returned is a monotonically increasing value (unless  
tampered with via the clock_set_time function).


> under my previous mail i incorrectly stated that clock_gettime is
> unavailable under Darwin and FreeBSD:
> it exist under FreeBSD with CLOCK_MONOTONIC.
>
> steven do you need a clock that can be converted to time of day ?
>
> Le 20 nov. 06 à 13:38, Alejandro López a écrit :
>
>> Hi Steven,
>>
>> on Solaris you can use the function posix clock_gettime():
>>
>> Realtime Library Functions                     clock_settime(3RT)
>>
>> NAME
>>      clock_settime, clock_gettime, clock_getres - high-resolution
>>      clock operations
>>
>> SYNOPSIS
>>      cc [ flag... ] file... -lrt [ library... ]
>>      #include <time.h>
>>
>>      int clock_gettime(clockid_t clock_id, struct timespec *tp);
>>
>>
>> with clock_id CLOCK_HIGHRES:
>>
>>      A clock_id of CLOCK_HIGHRES represents  the  non-adjustable,
>>      high-resolution  clock  for  the system. For this clock, the
>>      value returned by clock_gettime(3RT) represents  the  amount
>>      of  time  (in  seconds and nanoseconds) since some arbitrary
>>      time in the past; it is not correlated in  any  way  to  the
>>      time  of  day,  and  thus  is  not  subject  to resetting or
>>      drifting   by    way    of    adjtime(2),    ntp_adjtime(2),
>>      settimeofday(3C),  or  clock_settime().  The time source for
>>      this clock is the same as that for gethrtime(3C).
>>
>>
>> This function is also available on linux but the clock_id is
>> CLOCK_MONOTONIC.
>>
>>
>>
>>
>>
>> Or you could use the Solaris-specific gethrtime():
>>
>>
>> Standard C Library Functions                        gethrtime(3C)
>>
>>
>>
>> NAME
>>      gethrtime, gethrvtime - get high resolution time
>>
>> SYNOPSIS
>>      #include <sys/time.h>
>>
>>      hrtime_t gethrtime(void);
>>
>>      hrtime_t gethrvtime(void);
>>
>> DESCRIPTION
>>      The gethrtime() function returns the current high-resolution
>>      real time. Time is expressed as nanoseconds since some arbi-
>>      trary time in the past; it is not correlated in any  way  to
>>      the  time  of  day,  and thus is not subject to resetting or
>>      drifting by way of adjtime(2) or settimeofday(3C).  The  hi-
>>      res  timer  is  ideally  suited  to  performance measurement
>>      tasks, where cheap, accurate interval timing is required.
>>
>>      The  gethrvtime()  function  returns   the   current   high-
>>      resolution  LWP virtual time, expressed as total nanoseconds
>>      of execution time.
>>
>>      The gethrtime() and gethrvtime() functions  both  return  an
>>      hrtime_t, which is a 64-bit (long long) signed integer.
>>
>>
>>
>>
>> Hope this helps.
>> Alejandro.
>>
>>
>>
>> Steven Dake wrote:
>>> If the system time is changed while openais is running the timing
>>> system
>>> gets all out of wack.  This is because gettimeofday returns the
>>> current
>>> time, instead of the number of msec since boot and is used in the
>>> tlist
>>> code.
>>>
>>> There is a mechanism to determine the number of msec since boot  
>>> which
>>> appears to be portable.  The posix API is "times" which returns the
>>> number of clock ticks since system boot.
>>>
>>> The Linux man page says times returns a time value from some time
>>> in the
>>> past but on linux this is the system boot time.
>>>
>>> On BSD or Solaris, is this also the case?  I don't have the man
>>> pages to
>>> check these systems and would like a portable solution.  The other
>>> possibility is getitimer and setitimer or the posix timer_gettime
>>> absolute time but I think these posix APIs are not supported on all
>>> platforms.
>>>
>>> Regards
>>> -steve
>>>
>>> _______________________________________________
>>> Openais mailing list
>>> Openais at lists.osdl.org
>>> https://lists.osdl.org/mailman/listinfo/openais
>> _______________________________________________
>> Openais mailing list
>> Openais at lists.osdl.org
>> https://lists.osdl.org/mailman/listinfo/openais
>
>
> _______________________________________________
> Openais mailing list
> Openais at lists.osdl.org
> https://lists.osdl.org/mailman/listinfo/openais
>




------------------------------

Message: 6
Date: Mon, 20 Nov 2006 15:50:34 +0100
From: Hans Feldt <Hans.Feldt at ericsson.com>
Subject: [Openais] Thread model of openais?
To: "openais at lists.osdl.org" <openais at lists.osdl.org>
Message-ID: <4561C0BA.4030702 at ericsson.com>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

Steven, could you please explain how posix threads are used within openais?

Regards,
Hans


------------------------------

Message: 7
Date: Mon, 20 Nov 2006 16:21:57 +0100
From: Hans Feldt <Hans.Feldt at ericsson.com>
Subject: Re: [Openais] openais CsiSet Callback
To: Frederic Herrmann <Frederic.Herrmann at sun.com>
Cc: Openais at lists.osdl.org
Message-ID: <4561C815.5020308 at ericsson.com>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed


I interpret your answer that you think openais should stick with the 
SaAmfCSIDescriptorT reference (pointer) in the prototype?

The specification is ambigious and we interpret it so that we get a good 
  interface. Good meaning structures passed by reference.

Who will report the typo to SAF?

Regards,
Hans

P.S. Sorry for not reading the original mail properly.


Frederic Herrmann wrote:
> I think this is a typo in the spec document. The parameter description says:
> 
> "csiDescriptor - [in] A pointer to the descriptor with information
> about the component service instances targeted by this callback invocation."
> 
> which indicates that the intent was indeed to have a SaAmfCSIDescriptorT*.
> 
> Note however that while slightly less performant it is still possible to 
> pass a structure by value instead of by reference to the callback so I 
> think it might be possible to convince Steve that it can work as 
> specified :-)
> 
> Unfortunatly most of the header files are done by cut/paste from the 
> spec so typos in the spec propagate in the header file.
> 
> Fred.
> 
> 
> Steven Dake wrote:
> 
>>On Fri, 2006-11-17 at 15:48 +0100, Ola Lundqvist wrote:
>>
>>
>>>Hi
>>>
>>>Venkat Chandra wrote:
>>>
>>>
>>>>I mean, the last parameter is listed as a pointer - but, the spec seems
>>>>to indicate otherwise...
>>>
>>>To me it looks like the specification is broken, but it valid code and
>>>AMF do not follow it, so yes it can be a problem.
>>>
>>>Regards,
>>>
>>>// Ola
>>>
>>>
>>>
>>>
>>>>Venkat
>>
>>It is my view the specification is broken in this regard which is why
>>the implementation varies from the specification.  If someone can
>>convince me how we could get it to work otherwise, we could change it to
>>match the spec.
>>
>>Regards
>>-steve
>>
>>
>>
>>>>>From: Hans Feldt <Hans.Feldt at ericsson.com>
>>>>>To: Venkat Chandra <venkatec at hotmail.com>
>>>>>CC: Openais at lists.osdl.org
>>>>>Subject: Re: [Openais] openais CsiSet Callback
>>>>>Date: Fri, 17 Nov 2006 07:51:21 +0100
>>>>>
>>>>>Venkat Chandra wrote:
>>>>>
>>>>>
>>>>>>Folks,
>>>>>>
>>>>>>The AIS spec indicates the following for the CsiSet callback...
>>>>>>
>>>>>>                   (SaInvocationT inv,
>>>>>>                    const SaNameT * comp_name,
>>>>>>                    SaAmfHAStateT ha_state, SaAmfCSIDescriptorT
>>>>>>csi_desc)
>>>>>>
>>>>>>However, openais uses *csi_desc for the 3rd parameter.
>>>>>>
>>>>>>Is this a violation of the spec ? Or, am I missing something here ?
>>>>>
>>>>>From whitetank/include/saAmf.h (same as trunk):
>>>>
>>>>>typedef void (*SaAmfCSISetCallbackT) (
>>>>>   SaInvocationT invocation,
>>>>>   const SaNameT *compName,
>>>>>   SaAmfHAStateT haState,
>>>>>   SaAmfCSIDescriptorT *csiDescriptor);
>>>>>
>>>>>Same as the spec.
>>>>>
>>>>>Regards,
>>>>>Hans
>>>>>
>>>>>
>>>>>
>>>>>>Venkat
>>>>>>
>>>>>>_________________________________________________________________
>>>>>>Get FREE company branded e-mail accounts and business Web site from
>>>>>>Microsoft Office Live
>>>>>>http://clk.atdmt.com/MRT/go/mcrssaub0050001411mrt/direct/01/
>>>>>>
>>>>>>_______________________________________________
>>>>>>Openais mailing list
>>>>>>Openais at lists.osdl.org
>>>>>>https://lists.osdl.org/mailman/listinfo/openais
>>>>>>
>>>>>
>>>>_________________________________________________________________
>>>>Get the latest Windows Live Messenger 8.1 Beta version. Join now.
>>>>http://ideas.live.com
>>>>
>>>>
>>>>------------------------------------------------------------------------
>>>>
>>>>_______________________________________________
>>>>Openais mailing list
>>>>Openais at lists.osdl.org
>>>>https://lists.osdl.org/mailman/listinfo/openais
>>>
>>>
>>_______________________________________________
>>Openais mailing list
>>Openais at lists.osdl.org
>>https://lists.osdl.org/mailman/listinfo/openais
> 
> 
> _______________________________________________
> Openais mailing list
> Openais at lists.osdl.org
> https://lists.osdl.org/mailman/listinfo/openais
> 



------------------------------

_______________________________________________
Openais mailing list
Openais at lists.osdl.org
https://lists.osdl.org/mailman/listinfo/openais


End of Openais Digest, Vol 30, Issue 21
***************************************




More information about the Openais mailing list