docs: final Transaction suspendGlobalTx(int action) throws CSIException //LIDB1673.2.1.5 //d174358.1
      {
          Transaction ctrl = null; //LIDB1673.2.1.5
          try { //LIDB1673.2.1.5
  
              ctrl = txService.suspend(); //LIDB1673.2.1.5
              if (TraceComponent.isAnyTracingEnabled()) // d527372
              {
                  if (tc.isEventEnabled()) //LIDB1673.2.1.5
                      Tr.event(tc, "Suspending TX cntxt: " + ctrl); //LIDB1673.2.1.5
  
                  // d165585 Begins
                  if (TETxLifeCycleInfo.isTraceEnabled()) // PQ74774
                  { // PQ74774
                      String idStr = null; // d171555
                      if (ctrl != null) // d171555
                          idStr = ctrl.toString(); // d171555
                      int idx;
                      idStr = (idStr != null)
                                      ? (((idx = idStr.indexOf("(")) != -1)
                                                      ? idStr.substring(idx + 1, idStr.indexOf(")"))
                                                      : ((idx = idStr.indexOf("tid=")) != -1)
                                                                      ? idStr.substring(idx + 4)
                                                                      : idStr)
                                      : "NoTx";
                      TETxLifeCycleInfo.traceGlobalTxSuspend(idStr, "Suspend Global Tx");
                  } // PQ74774
                  // d165585 Ends
              }
          } //LIDB1673.2.1.5
          catch (SystemException e) //LIDB1673.2.1.5
          { //LIDB1673.2.1.5
              FFDCFilter.processException(e, CLASS_NAME + ".setRollbackOnly", "770", this); //LIDB1673.2.1.5
              if (TraceComponent.isAnyTracingEnabled() && tc.isEventEnabled()) //LIDB1673.2.1.5
                  Tr.event(tc, "Error suspending global tx", e); //LIDB1673.2.1.5
              throw new CSIException("suspend global tx failed", e);//d174358.1
          } //LIDB1673.2.1.5
  
          if (ctrl != null) {
              int txtype = ((UOWCoordinator) ctrl).getTxType(); //LIDB1673.2.1.5
              // NonInteropControls have no coordinator
  
              if (txtype == UOWCoordinator.TXTYPE_NONINTEROP_GLOBAL)
                  return ctrl; //LIDB1673.2.1.5
          }
          return ctrl;
      }