docs: static void rcvCreateBifurcatedSess(CommsByteBuffer request, Conversation conversation,
                                          int requestNumber, boolean allocatedFromBufferPool,
                                          boolean partOfExchange)
      {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(tc, "rcvCreateBifurcatedSess",
                          new Object[]
                          {
                           request,
                           conversation,
                           "" + requestNumber,
                           "" + allocatedFromBufferPool
                          });
  
          ConversationState convState = (ConversationState) conversation.getAttachment();
  
          short connectionObjectID = request.getShort(); // BIT16 ConnectionObjectId
          long mpSessionId = request.getLong(); // BIT64 MessageProcessorSessionId
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
          {
              SibTr.debug(tc, "SICoreConnection Id:", "" + connectionObjectID);
              SibTr.debug(tc, "MP Session Id:", "" + mpSessionId);
          }
  
          SICoreConnection connection =
                          ((CATConnection) convState.getObject(connectionObjectID)).getSICoreConnection();
  
          try
          {
              BifurcatedConsumerSession bifConsumerSession =
                              connection.createBifurcatedConsumerSession(mpSessionId);
  
              CATMainConsumer mainConsumer = new CATMainConsumer(conversation,
                              (short) 0, // Client sess id
                              null, // ConsumerSession
                              false, // Read ahead
                              false, // No local
                              null); // Unrecov reliability
  
              short consSessionObjectID = (short) convState.addObject(mainConsumer);
              mainConsumer.setConsumerSessionId(consSessionObjectID);
              mainConsumer.setBifurcatedSession(bifConsumerSession);
  
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                  SibTr.debug(tc, "Consumer Session Id:", consSessionObjectID);
  
              StaticCATHelper.sendSessionCreateResponse(JFapChannelConstants.SEG_CREATE_BIFURCATED_SESSION_R,
                                                        requestNumber,
                                                        conversation,
                                                        consSessionObjectID,
                                                        bifConsumerSession,
                                                        null);
          } catch (ConversationStateFullException e)
          {
              FFDCFilter.processException(e,
                                          CLASS_NAME + ".rcvCreateBifurcatedSess",
                                          CommsConstants.STATICCATCONSUMER_CREATEBIF_01);
  
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                  SibTr.debug(tc, e.getMessage(), e);
  
              StaticCATHelper.sendExceptionToClient(e,
                                                    CommsConstants.STATICCATCONSUMER_CREATEBIF_01,
                                                    conversation, requestNumber);
          } catch (SINotAuthorizedException e)
          {
              // No FFDC Code Needed
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                  SibTr.debug(tc, e.getMessage(), e);
  
              StaticCATHelper.sendExceptionToClient(e,
                                                    null,
                                                    conversation, requestNumber);
          } catch (SIException e)
          {
              //No FFDC code needed
              //Only FFDC if we haven't received a meTerminated event.
              if (!convState.hasMETerminated())
              {
                  FFDCFilter.processException(e,
                                              CLASS_NAME + ".rcvCreateBifurcatedSess",
                                              CommsConstants.STATICCATCONSUMER_CREATEBIF_02);
              }
  
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                  SibTr.debug(tc, e.getMessage(), e);
  
              StaticCATHelper.sendExceptionToClient(e,
                                                    CommsConstants.STATICCATCONSUMER_CREATEBIF_02,
                                                    conversation, requestNumber);
          }
  
          request.release(allocatedFromBufferPool);
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(tc, "rcvCreateBifurcatedSess");
      }