ipdevpoll is not able to gather ARP and ND data from h3c/hp devices configured in IRF

Bug #1027051 reported by Tomas Podermanski
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Network Administration Visualized
Fix Released
Medium
Morten Brekkevold

Bug Description

ipdevpool reports the errors into logfile when accessing device configured in IRF setup. With single device the ipdevpool works fine. The version of software and hardware on single and IRF device is the same.

The output of log is available on:

http://hawk.cis.vutbr.cz/~tpoder/tmp/navlog.txt

There is possibility to create the access to the device in case it would be needed.

Revision history for this message
Morten Brekkevold (mbrekkevold) wrote :

I have no idea what IRF is, but ipdevpoll is apparently making some incorrect assumptions about the resulting data from an ARP/ND collection. I won't be able to reproduce the problem with our equipment, but I will try to write some unit tests to produce the same error.

I'm pasting the relevant tracebacks from your log here, for future reference.

This:

Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/twisted/internet/defer.py", line 318, in callback
    self._startRunCallbacks(result)
  File "/usr/lib/python2.6/dist-packages/twisted/internet/defer.py", line 424, in _startRunCallbacks
    self._runCallbacks()
  File "/usr/lib/python2.6/dist-packages/twisted/internet/defer.py", line 441, in _runCallbacks
    self.result = callback(self.result, *args, **kw)
  File "/usr/lib/python2.6/dist-packages/twisted/internet/defer.py", line 949, in gotResult
    _inlineCallbacks(r, g, deferred)
--- <exception caught here> ---
  File "/usr/lib/python2.6/dist-packages/twisted/internet/defer.py", line 893, in _inlineCallbacks
    result = g.send(result)
  File "/usr/lib/pymodules/python2.6/nav/ipdevpoll/plugins/arp.py", line 80, in handle
    if not ipv6_address_in_mappings(mappings):
  File "/usr/lib/pymodules/python2.6/nav/ipdevpoll/plugins/arp.py", line 232, in ipv6_address_in_mappings
    if ip.version() == 6:
exceptions.AttributeError: 'NoneType' object has no attribute 'version'

and this:

Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/twisted/internet/defer.py", line 345, in errback
    self._startRunCallbacks(fail)
  File "/usr/lib/python2.6/dist-packages/twisted/internet/defer.py", line 424, in _startRunCallbacks
    self._runCallbacks()
  File "/usr/lib/python2.6/dist-packages/twisted/internet/defer.py", line 441, in _runCallbacks
    self.result = callback(self.result, *args, **kw)
  File "/usr/lib/python2.6/dist-packages/twisted/internet/defer.py", line 949, in gotResult
    _inlineCallbacks(r, g, deferred)
--- <exception caught here> ---
  File "/usr/lib/python2.6/dist-packages/twisted/internet/defer.py", line 891, in _inlineCallbacks
    result = result.throwExceptionIntoGenerator(g)
  File "/usr/lib/python2.6/dist-packages/twisted/python/failure.py", line 338, in throwExceptionIntoGenerator
    return g.throw(self.type, self.value, self.tb)
  File "/usr/lib/pymodules/python2.6/nav/ipdevpoll/plugins/arp.py", line 95, in handle
    yield self._process_data(mappings)
  File "/usr/lib/python2.6/dist-packages/twisted/internet/defer.py", line 893, in _inlineCallbacks
    result = g.send(result)
  File "/usr/lib/pymodules/python2.6/nav/ipdevpoll/plugins/arp.py", line 121, in _process_data
    self._make_new_mappings(new_mappings)
  File "/usr/lib/pymodules/python2.6/nav/ipdevpoll/plugins/arp.py", line 190, in _make_new_mappings
    arp.ip = ip.strCompressed()
exceptions.AttributeError: 'NoneType' object has no attribute 'strCompressed'

summary: - ipdevpool is not able to gather ARP and ND data from h3c/hp devices
+ ipdevpoll is not able to gather ARP and ND data from h3c/hp devices
configured in IRF
Changed in nav:
status: New → Triaged
importance: Undecided → Medium
assignee: nobody → Morten Brekkevold (mbrekkevold)
Revision history for this message
Morten Brekkevold (mbrekkevold) wrote :

Tomas, are you able to test the attached patch?

Changed in nav:
status: Triaged → In Progress
Revision history for this message
Tomas Podermanski (tpoder) wrote : Re: [Bug 1027051] Re: ipdevpoll is not able to gather ARP and ND data from h3c/hp devices configured in IRF

Hi Morten,
    it seems to me that patch works fine. There is a few days I applied
it and the errors haven't appeared so far. I also checked whether
collecting data the from IRF works and it seems to me that everything
works fine.

Thanks for your time

On 8/9/12 4:29 PM, Morten Brekkevold wrote:
> Tomas, are you able to test the attached patch?
>
> ** Patch added: "hp-irf-arp-crash-fix.patch"
> https://bugs.launchpad.net/nav/+bug/1027051/+attachment/3254502/+files/hp-irf-arp-crash-fix.patch
>
> ** Changed in: nav
> Status: Triaged => In Progress
>

Revision history for this message
Morten Brekkevold (mbrekkevold) wrote :

Thank you for testing the patch, Tomas. Committed here: http://nav.uninett.no/hg/stable/rev/2bf06b74f773

Changed in nav:
status: In Progress → Fix Committed
milestone: none → 3.11.6
Changed in nav:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.