Uploaded image for project: 'IMPALA'
  1. IMPALA
  2. IMPALA-6138

Thread creation failure in TAcceptQueueServer may cause crash

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • Impala 2.10.0
    • None
    • Backend
    • None
    • ghx-label-9

    Description

      We recently added a patch to catch all exceptions thrown by boost while creating threads:
      https://github.com/apache/incubator-impala/commit/e993b9712c81dfb66fdf65bb5269cdc38a8eef18#diff-66eda90b98c0bdfb1cd6e6c0a97e97fa

      However, in one case, we still do not catch the exceptions. We pass in a Thread factory into thrift so that it uses Impala code to create threads:
      https://github.com/apache/incubator-impala/blob/master/be/src/rpc/thrift-thread.cc#L57

      And that throws an exception on an inability to create threads:
      https://github.com/apache/incubator-impala/blob/master/be/src/rpc/thrift-thread.cc#L41

      The possible point of failure in TAcceptQueueServer is:
      https://github.com/apache/incubator-impala/blob/master/be/src/rpc/TAcceptQueueServer.cpp#L163

      Nothing catches this exception, which means that if TAcceptQueueServer is unable to create a thread, the process will crash.

      One way to handle this would be to have the users of TAcceptQueueServer handle exceptions.

      Attachments

        Activity

          People

            Unassigned Unassigned
            sailesh Sailesh Mukil
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated: