Re: row merge issue -possible bug

2012-10-04 Thread Bill Fenner
On Wed, Oct 3, 2012 at 5:32 PM, Joan Landry
joan.lan...@overturenetworks.com wrote:
 I am seeing an issue (possible bug) in the code where a getnext row merge 
 results in the wrong result. Code uses row_merge helpers.

 Does the incoming request need to be sequentially numbered oid's to work or 
 is this a bug in net-snmp?

 This fails to get the correct result:
 snmpgetnext -c public -v 2c x.x.x.x
 1.3.6.1.4.1..2.11.1.2.1.1.11.1
 1.3.6.1.4.1..2.11.1.2.1.1.10.1

 SNMPv2-SMI::enterprises..2.11.1.2.3.1.2.1 = STRING: Main board
 SNMPv2-SMI::enterprises..2.11.1.2.3.1.2.1 = STRING: Main board

 This works:

 snmpgetnext -c public -v 2c x.x.x.x
 1.3.6.1.4.1..2.11.1.2.1.1.10.1
 1.3.6.1.4.1..2.11.1.2.1.1.11.1

 SNMPv2-SMI::enterprises..2.11.1.2.1.1.11.1 = 
 SNMPv2-SMI::enterprises..2.11.1.2.3.1.2.1 = STRING: Main board

Disclaimer: I know *nothing* about the row_merge helper.

When using table_iterator, we found that it would mishandle multiple
requests in ordered tables, if the requests were ordered backwards
as you found.  E.g.,

snmpget -v 2c -c public blue ifInOctets.43 ifInOctets.44
IF-MIB::ifInOctets.43 = Counter32: 483792666
IF-MIB::ifInOctets.44 = Counter32: 1470706044

vs.

snmpget -v 2c -c public blue ifInOctets.44 ifInOctets.43
IF-MIB::ifInOctets.44 = Counter32: 1474004919
IF-MIB::ifInOctets.43 = No Such Instance currently exists at this OID

We found that injecting the netsnmp_get_serialize_handler resolved our
problem.  Again, I know nothing about the row_merge helper, so I don't
know if injecting the serialize handler is a significant performance
hit for you.

  Bill




 This email and attachments may contain privileged or confidential information 
 intended only for the addressee(s) indicated. The sender does not waive any 
 of its rights, privileges or protections respecting this information. If you 
 are not the named addressee, an employee, or agent responsible for sending 
 this message to the named addressee (or this message was received by 
 mistake), you are not authorized to read, print, retain, copy or disseminate 
 this message or any part of it. If received in error, please notify us 
 immediately by e-mail, discard any paper copies and delete all electronic 
 files of the email.

 Computer viruses can be transmitted via email. The recipient should check 
 this email and any attachments for viruses. Email transmission cannot be 
 guaranteed to be secured or error-free as information could be intercepted, 
 corrupted, lost, destroyed, arrive late or incomplete, or contain viruses. 
 The sender accepts no liability for any damage caused by any transmitted 
 viruses or errors or omissions in the contents of this message.

 Overture Networks, Inc. 637 Davis Drive, Morrisville, NC USA 27560 
 www.overturenetworks.com

 --
 Don't let slow site performance ruin your business. Deploy New Relic APM
 Deploy New Relic app performance management and know exactly
 what is happening inside your Ruby, Python, PHP, Java, and .NET app
 Try New Relic at no cost today and get our sweet Data Nerd shirt too!
 http://p.sf.net/sfu/newrelic-dev2dev
 ___
 Net-snmp-users mailing list
 Net-snmp-users@lists.sourceforge.net
 Please see the following page to unsubscribe or change other options:
 https://lists.sourceforge.net/lists/listinfo/net-snmp-users

--
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev
___
Net-snmp-users mailing list
Net-snmp-users@lists.sourceforge.net
Please see the following page to unsubscribe or change other options:
https://lists.sourceforge.net/lists/listinfo/net-snmp-users


RE: row merge issue -possible bug

2012-10-04 Thread Joan Landry
Thanks for this - this did make the problem go away - however this is not a 
workable solution since this serializes every oid per input packet.

Does anyone know if there is a solution that does not require the overhead of 
serializing every oid in a packet?

Have you reported this as a bug?
If not can someone tell me how to raise this issue to the net-snmp code 
developers?

Thanks


-Original Message-
From: Bill Fenner [mailto:fen...@gmail.com]
Sent: Thursday, October 04, 2012 10:12 AM
To: Joan Landry
Cc: net-snmp-users@lists.sourceforge.net
Subject: Re: row merge issue -possible bug

On Wed, Oct 3, 2012 at 5:32 PM, Joan Landry joan.lan...@overturenetworks.com 
wrote:
 I am seeing an issue (possible bug) in the code where a getnext row merge 
 results in the wrong result. Code uses row_merge helpers.

 Does the incoming request need to be sequentially numbered oid's to work or 
 is this a bug in net-snmp?

 This fails to get the correct result:
 snmpgetnext -c public -v 2c x.x.x.x
 1.3.6.1.4.1..2.11.1.2.1.1.11.1
 1.3.6.1.4.1..2.11.1.2.1.1.10.1

 SNMPv2-SMI::enterprises..2.11.1.2.3.1.2.1 = STRING: Main board
 SNMPv2-SMI::enterprises..2.11.1.2.3.1.2.1 = STRING: Main board

 This works:

 snmpgetnext -c public -v 2c x.x.x.x
 1.3.6.1.4.1..2.11.1.2.1.1.10.1
 1.3.6.1.4.1..2.11.1.2.1.1.11.1

 SNMPv2-SMI::enterprises..2.11.1.2.1.1.11.1 = 
 SNMPv2-SMI::enterprises..2.11.1.2.3.1.2.1 = STRING: Main board

Disclaimer: I know *nothing* about the row_merge helper.

When using table_iterator, we found that it would mishandle multiple requests 
in ordered tables, if the requests were ordered backwards
as you found.  E.g.,

snmpget -v 2c -c public blue ifInOctets.43 ifInOctets.44
IF-MIB::ifInOctets.43 = Counter32: 483792666
IF-MIB::ifInOctets.44 = Counter32: 1470706044

vs.

snmpget -v 2c -c public blue ifInOctets.44 ifInOctets.43
IF-MIB::ifInOctets.44 = Counter32: 1474004919
IF-MIB::ifInOctets.43 = No Such Instance currently exists at this OID

We found that injecting the netsnmp_get_serialize_handler resolved our problem. 
 Again, I know nothing about the row_merge helper, so I don't know if injecting 
the serialize handler is a significant performance hit for you.

  Bill




 This email and attachments may contain privileged or confidential information 
 intended only for the addressee(s) indicated. The sender does not waive any 
 of its rights, privileges or protections respecting this information. If you 
 are not the named addressee, an employee, or agent responsible for sending 
 this message to the named addressee (or this message was received by 
 mistake), you are not authorized to read, print, retain, copy or disseminate 
 this message or any part of it. If received in error, please notify us 
 immediately by e-mail, discard any paper copies and delete all electronic 
 files of the email.

 Computer viruses can be transmitted via email. The recipient should check 
 this email and any attachments for viruses. Email transmission cannot be 
 guaranteed to be secured or error-free as information could be intercepted, 
 corrupted, lost, destroyed, arrive late or incomplete, or contain viruses. 
 The sender accepts no liability for any damage caused by any transmitted 
 viruses or errors or omissions in the contents of this message.

 Overture Networks, Inc. 637 Davis Drive, Morrisville, NC USA 27560
 www.overturenetworks.com

 --
  Don't let slow site performance ruin your business. Deploy
 New Relic APM Deploy New Relic app performance management and know
 exactly what is happening inside your Ruby, Python, PHP, Java, and
 .NET app Try New Relic at no cost today and get our sweet Data Nerd
 shirt too!
 http://p.sf.net/sfu/newrelic-dev2dev
 ___
 Net-snmp-users mailing list
 Net-snmp-users@lists.sourceforge.net
 Please see the following page to unsubscribe or change other options:
 https://lists.sourceforge.net/lists/listinfo/net-snmp-users


This email and attachments may contain privileged or confidential information 
intended only for the addressee(s) indicated. The sender does not waive any of 
its rights, privileges or protections respecting this information. If you are 
not the named addressee, an employee, or agent responsible for sending this 
message to the named addressee (or this message was received by mistake), you 
are not authorized to read, print, retain, copy or disseminate this message or 
any part of it. If received in error, please notify us immediately by e-mail, 
discard any paper copies and delete all electronic files of the email.

Computer viruses can be transmitted via email. The recipient should check this 
email and any attachments for viruses. Email transmission cannot be guaranteed 
to be secured or error-free as information could be intercepted, corrupted, 
lost, destroyed, arrive late or incomplete, or contain viruses

Re: row merge issue -possible bug

2012-10-04 Thread Bill Fenner
On Thu, Oct 4, 2012 at 4:28 PM, Joan Landry
joan.lan...@overturenetworks.com wrote:
 Thanks for this - this did make the problem go away - however this is not a 
 workable solution since this serializes every oid per input packet.

 Does anyone know if there is a solution that does not require the overhead of 
 serializing every oid in a packet?

 Have you reported this as a bug?

We haven't; due to the structure of our code it was hard to provide a
replication case, and the serialization handler was acceptable
overhead to us.

 If not can someone tell me how to raise this issue to the net-snmp code 
 developers?

http://www.net-snmp.org/bugs/

  Bill



 Thanks


 -Original Message-
 From: Bill Fenner [mailto:fen...@gmail.com]
 Sent: Thursday, October 04, 2012 10:12 AM
 To: Joan Landry
 Cc: net-snmp-users@lists.sourceforge.net
 Subject: Re: row merge issue -possible bug

 On Wed, Oct 3, 2012 at 5:32 PM, Joan Landry 
 joan.lan...@overturenetworks.com wrote:
 I am seeing an issue (possible bug) in the code where a getnext row merge 
 results in the wrong result. Code uses row_merge helpers.

 Does the incoming request need to be sequentially numbered oid's to work or 
 is this a bug in net-snmp?

 This fails to get the correct result:
 snmpgetnext -c public -v 2c x.x.x.x
 1.3.6.1.4.1..2.11.1.2.1.1.11.1
 1.3.6.1.4.1..2.11.1.2.1.1.10.1

 SNMPv2-SMI::enterprises..2.11.1.2.3.1.2.1 = STRING: Main board
 SNMPv2-SMI::enterprises..2.11.1.2.3.1.2.1 = STRING: Main board

 This works:

 snmpgetnext -c public -v 2c x.x.x.x
 1.3.6.1.4.1..2.11.1.2.1.1.10.1
 1.3.6.1.4.1..2.11.1.2.1.1.11.1

 SNMPv2-SMI::enterprises..2.11.1.2.1.1.11.1 = 
 SNMPv2-SMI::enterprises..2.11.1.2.3.1.2.1 = STRING: Main board

 Disclaimer: I know *nothing* about the row_merge helper.

 When using table_iterator, we found that it would mishandle multiple requests 
 in ordered tables, if the requests were ordered backwards
 as you found.  E.g.,

 snmpget -v 2c -c public blue ifInOctets.43 ifInOctets.44
 IF-MIB::ifInOctets.43 = Counter32: 483792666
 IF-MIB::ifInOctets.44 = Counter32: 1470706044

 vs.

 snmpget -v 2c -c public blue ifInOctets.44 ifInOctets.43
 IF-MIB::ifInOctets.44 = Counter32: 1474004919
 IF-MIB::ifInOctets.43 = No Such Instance currently exists at this OID

 We found that injecting the netsnmp_get_serialize_handler resolved our 
 problem.  Again, I know nothing about the row_merge helper, so I don't know 
 if injecting the serialize handler is a significant performance hit for you.

   Bill




 This email and attachments may contain privileged or confidential 
 information intended only for the addressee(s) indicated. The sender does 
 not waive any of its rights, privileges or protections respecting this 
 information. If you are not the named addressee, an employee, or agent 
 responsible for sending this message to the named addressee (or this message 
 was received by mistake), you are not authorized to read, print, retain, 
 copy or disseminate this message or any part of it. If received in error, 
 please notify us immediately by e-mail, discard any paper copies and delete 
 all electronic files of the email.

 Computer viruses can be transmitted via email. The recipient should check 
 this email and any attachments for viruses. Email transmission cannot be 
 guaranteed to be secured or error-free as information could be intercepted, 
 corrupted, lost, destroyed, arrive late or incomplete, or contain viruses. 
 The sender accepts no liability for any damage caused by any transmitted 
 viruses or errors or omissions in the contents of this message.

 Overture Networks, Inc. 637 Davis Drive, Morrisville, NC USA 27560
 www.overturenetworks.com

 --
  Don't let slow site performance ruin your business. Deploy
 New Relic APM Deploy New Relic app performance management and know
 exactly what is happening inside your Ruby, Python, PHP, Java, and
 .NET app Try New Relic at no cost today and get our sweet Data Nerd
 shirt too!
 http://p.sf.net/sfu/newrelic-dev2dev
 ___
 Net-snmp-users mailing list
 Net-snmp-users@lists.sourceforge.net
 Please see the following page to unsubscribe or change other options:
 https://lists.sourceforge.net/lists/listinfo/net-snmp-users


 This email and attachments may contain privileged or confidential information 
 intended only for the addressee(s) indicated. The sender does not waive any 
 of its rights, privileges or protections respecting this information. If you 
 are not the named addressee, an employee, or agent responsible for sending 
 this message to the named addressee (or this message was received by 
 mistake), you are not authorized to read, print, retain, copy or disseminate 
 this message or any part of it. If received in error, please notify us 
 immediately by e-mail, discard any paper copies and delete all electronic 
 files