docs: @Override
      public void asynchronousException(ConsumerSession session, Throwable e) {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(tc, "asynchronousException",
                          new Object[]
                          {
                           session,
                           e
                          });
  
          FFDCFilter.processException(e,
                                      CLASS_NAME + ".asynchronousException",
                                      CommsConstants.SERVERSICORECONNECTIONLISTENER_ASYNC_01,
                                      this);
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
              SibTr.debug(tc, "Caught an async exception:", e);
  
          try {
              sendMeNotificationEvent(CommsConstants.EVENTID_ASYNC_EXCEPTION, null, session, e);
          } catch (SIException e2) {
              FFDCFilter.processException(e,
                                          CLASS_NAME + ".asynchronousException",
                                          CommsConstants.SERVERSICORECONNECTIONLISTENER_ASYNC_02,
                                          this);
  
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                  SibTr.debug(tc, e.getMessage(), e);
  
              SibTr.error(tc, "COMMUNICATION_ERROR_SICO2018", e);
          }
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(tc, "asynchronousException");
      }