Could anyone help me?
I need to understand if there is some memory corruption or if I forgot a call to destroy functions

Thanks, regards

Marco Bascetta

On 16/05/2011 16:07, Marco Bascetta wrote:
Hi all,
I'm working on an snmp application, written in C, that requests information from many devices (I'm working with many "H3C S3600" switches and some debian hosts).
You can find a simple extract of program with some test cases attached.

When I run the program, some requests working, others gone inexplicably in timeout. (All configuration are equals and all hosts are up)
I tried with "normal" APIs and "threaded" APIs with this configurations:

Sequential requests in "for cycle":
* v2 - 1 host        - multiple request(20000 retries)=> OK
* v2 - multiple host - single/multiple request          => OK
* v3 - 1 host        - multiple request (20000 retries)=> OK
* *v3* - *multiple host* - single/multiple request     => *FAIL*

Sequential requests in single program, one *fork* for request OR one *fork+exec* for request:
* v2 - 1 host        - multiple request (20000 retries)=> OK
* v2 - multiple host - single/multiple request          => OK
* v3 - 1 host        - multiple request (20000 retries)=> OK
* v3 - multiple host - single/multiple request          => *OK*

Here an example of output: (use ./test -h for usage)
$ ./test -r20 -t wrapper-v2 192.168.0.{2,4,5,6,7}
== Run 19 ==
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2530553) 7:01:45.53
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2530573) 7:01:45.73
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2530567) 7:01:45.67
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2530516) 7:01:45.16
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2530591) 7:01:45.91
... etc. etc. ...
== Run 0 ==
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2530622) 7:01:46.22
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2530641) 7:01:46.41
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2530635) 7:01:46.35
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2530584) 7:01:45.84
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2530658) 7:01:46.58

$ ./test -r1 -t wrapper *-v3* 192.168.0.{2,4,5,6,7}
== Run 0 ==
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2110922) 5:51:49.22
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2110947) 5:51:49.47
*Timeout*: No response from 192.168.0.5. <= *FAIL*
*Timeout*: No response from 192.168.0.6.<= *FAIL*
*Timeout*: No response from 192.168.0.7.<= *FAIL*

$ ./test -r2 -t thread -v2 192.168.0.{2,4,5,6,7}
== Run 1 ==
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2795135) 7:45:51.35
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2795154) 7:45:51.54
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2795149) 7:45:51.49
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2795095) 7:45:50.95
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2795171) 7:45:51.71
== Run 0 ==
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2795138) 7:45:51.38
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2795157) 7:45:51.57
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2795152) 7:45:51.52
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2795098) 7:45:50.98
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2795174) 7:45:51.74

$ ./test -r2 -t thread *-v3* 192.168.0.{2,4,5,6,7}
== Run 1 ==
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2795664) 7:45:56.64
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2795688) 7:45:56.88
192.168.0.5: SNMP write error: Timeout.<= *FAIL*
192.168.0.6: SNMP write error: Timeout.<= *FAIL*
192.168.0.7: SNMP write error: Timeout.<= *FAIL*
== Run 0 ==
192.168.0.2: SNMP write error: Timeout.
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2798112) 7:46:21.12
192.168.0.5: SNMP write error: Timeout.<= *FAIL*
192.168.0.6: SNMP write error: Timeout.<= *FAIL*
192.168.0.7: SNMP write error: Timeout.<= *FAIL*

I really appreciate any help on this issue.
Best regards

    Marco Bascetta


------------------------------------------------------------------------------
Achieve unprecedented app performance and reliability
What every C/C++ and Fortran developer should know.
Learn how Intel has extended the reach of its next-generation tools
to help boost performance applications - inlcuding clusters.
http://p.sf.net/sfu/intel-dev2devmay


_______________________________________________
Net-snmp-coders mailing list
Net-snmp-coders@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/net-snmp-coders


--
Marco Bascetta - Sadel SpA
Software Development
Via Serenari 9, Castel Maggiore (BO)
Tel. 051 705884 Int. 2501

------------------------------------------------------------------------------
vRanger cuts backup time in half-while increasing security.
With the market-leading solution for virtual backup and recovery, 
you get blazing-fast, flexible, and affordable data protection.
Download your free trial now. 
http://p.sf.net/sfu/quest-d2dcopy1
_______________________________________________
Net-snmp-coders mailing list
Net-snmp-coders@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/net-snmp-coders

Reply via email to