Opened 7 years ago

Closed 4 years ago

#7837 closed defect (worksforme)

arm crashes when I open the conenctions page

Reported by: SoakedNoodle Owned by: atagar
Priority: Very High Milestone:
Component: Core Tor/Nyx Version:
Severity: Normal Keywords: arm
Cc: Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

When I use the left/right buttons or the menu option.
version 1.4.6_dev

Traceback (most recent call last):
  File "arm/src/starter.py", line 497, in <module>
    cli.controller.startTorMonitor(time.time() - initTime)
  File "/home/soakednoodle/arm/src/cli/controller.py", line 569, in startTorMonitor
    curses.wrapper(drawTorMonitor, startTime)
  File "/usr/lib/python2.7/curses/wrapper.py", line 43, in wrapper
    return func(stdscr, *args, **kwds)
  File "/home/soakednoodle/arm/src/cli/controller.py", line 624, in drawTorMonitor
    control.redraw(False)
  File "/home/soakednoodle/arm/src/cli/controller.py", line 341, in redraw
    panelImpl.redraw(force)
  File "/home/soakednoodle/arm/src/util/panel.py", line 408, in redraw
    self.draw(self.maxX, self.maxY)
  File "/home/soakednoodle/arm/src/cli/connections/connPanel.py", line 388, in draw
    drawEntry = entryLine.getListingEntry(width - scrollOffset - len(prefix), currentTime, self._listingType)
  File "/home/soakednoodle/arm/src/cli/connections/connEntry.py", line 290, in getListingEntry
    myListing = entries.ConnectionPanelLine.getListingEntry(self, width, currentTime, listingType)
  File "/home/soakednoodle/arm/src/cli/connections/entries.py", line 136, in getListingEntry
    self._listingCache = self._getListingEntry(width, currentTime, listingType)
  File "/home/soakednoodle/arm/src/cli/connections/connEntry.py", line 324, in _getListingEntry
    (self._getListingContent(width - (12 + timeWidth) - 1, listingType), lineFormat),
  File "/home/soakednoodle/arm/src/cli/connections/connEntry.py", line 545, in _getListingContent
    dstAddress = self.getDestinationLabel(26, includeLocale = True)
  File "/home/soakednoodle/arm/src/cli/connections/connEntry.py", line 828, in getDestinationLabel
    foreignLocale = self.foreign.getLocale("??")
  File "/home/soakednoodle/arm/src/cli/connections/connEntry.py", line 111, in getLocale
    return conn.getInfo("ip-to-country/%s" % self.ipAddr, default)
  File "/home/soakednoodle/arm/src/util/torTools.py", line 441, in getInfo
    return self.controller.get_info(param, default)
  File "/home/soakednoodle/arm/src/stem/control.py", line 841, in get_info
    log.warn("Tor's geoip database is unavailable.")
  File "/home/soakednoodle/arm/src/stem/util/log.py", line 153, in warn
    def warn(message):   log(Runlevel.WARN, message)
  File "/home/soakednoodle/arm/src/stem/util/log.py", line 128, in log
    LOGGER.log(LOG_VALUES[runlevel], message)
  File "/usr/lib/python2.7/logging/__init__.py", line 1203, in log
    self._log(level, msg, args, **kwargs)
  File "/usr/lib/python2.7/logging/__init__.py", line 1258, in _log
    self.handle(record)
  File "/usr/lib/python2.7/logging/__init__.py", line 1268, in handle
    self.callHandlers(record)
  File "/usr/lib/python2.7/logging/__init__.py", line 1308, in callHandlers
    hdlr.handle(record)
  File "/usr/lib/python2.7/logging/__init__.py", line 748, in handle
    self.emit(record)
  File "/home/soakednoodle/arm/src/cli/logPanel.py", line 584, in emit
    eventColor = RUNLEVEL_EVENT_COLOR[record.levelname]
KeyError: 'WARNING'

I think "Tor's geoip database is unavailable." shouldn't fail this hard, right?

Child Tickets

Change History (2)

comment:1 Changed 7 years ago by atagar

Hi SoakedNoodle. Thanks for the bug report! This is likely related to the migration of arm to stem (it included a massive overhaul of arm's internals, potentially causing issues - good for stability in the long term but bad in the short term).

comment:2 Changed 4 years ago by atagar

Resolution: worksforme
Severity: Normal
Status: newclosed

Cleaning up old tickets. Nyx is undergoing a rewrite, if this is still relevant then feel free to reopen.

Note: See TracTickets for help on using tickets.