Skip to content

Long running process exits with IOSelectorsException #38

Description

@PMunch

I have a program which runs for a long time, every once in a time sending something over MQTT. Recently I got a crash with this error message:

  /home/peter/.choosenim/toolchains/nim-2.0.0/lib/pure/asyncdispatch.nim(2022) waitFor
  /home/peter/.choosenim/toolchains/nim-2.0.0/lib/pure/asyncdispatch.nim(1711) poll
  /home/peter/.choosenim/toolchains/nim-2.0.0/lib/pure/asyncdispatch.nim(1452) runOnce
  /home/peter/.choosenim/toolchains/nim-2.0.0/lib/pure/asyncdispatch.nim(269) processPendingCallbacks
  /home/peter/.nimble/pkgs2/nmqtt-1.0.5-e9b66114ab9f39559f01e200164bfff921c0c8f3/nmqtt.nim(1094) runConnect (Async)
  /home/peter/.nimble/pkgs2/nmqtt-1.0.5-e9b66114ab9f39559f01e200164bfff921c0c8f3/nmqtt.nim(1066) connectBroker (Async)
  /home/peter/.choosenim/toolchains/nim-2.0.0/lib/pure/asyncnet.nim(296) dial (Async)
  /home/peter/.choosenim/toolchains/nim-2.0.0/lib/pure/asyncdispatch.nim(1902) dial
  /home/peter/.choosenim/toolchains/nim-2.0.0/lib/pure/asyncdispatch.nim(1868) tryNextAddrInfo
  /home/peter/.choosenim/toolchains/nim-2.0.0/lib/pure/asyncdispatch.nim(1733) createAsyncNativeSocket
  /home/peter/.choosenim/toolchains/nim-2.0.0/lib/pure/asyncdispatch.nim(1247) register
  /home/peter/.choosenim/toolchains/nim-2.0.0/lib/pure/ioselects/ioselectors_epoll.nim(136) registerHandle
  /home/peter/.choosenim/toolchains/nim-2.0.0/lib/pure/selectors.nim(287) raiseIOSelectorsError
Exception message: Maximum number of descriptors is exhausted!
 [IOSelectorsException]

Might be something else in my program which leaks descriptors, but figured I'd report it here first since the error was triggered in nmqtt. The MqttContext lives for the lifetime of the program, and the messages are sent wrapped in a start/disconnect construct (but not in a try/finally one).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions