docs: public void processTxContextChange(EJBThreadData threadData, boolean isLocal) throws RemoteException {
          final boolean isTraceOn = TraceComponent.isAnyTracingEnabled(); // d532639.2
  
          if (isTraceOn && tc.isEntryEnabled())
              Tr.entry(tc, "processTxContextChange (" + isLocal + ")");
  
          // Get the current transaction, and use it to locate or create the
          // Container Transaction object (ContainerTx).                   d139352-2
          SynchronizationRegistryUOWScope uowId = uowCtrl.getCurrentTransactionalUOW(true); // d166414
  
          ContainerTx tx = getCurrentTx(uowId, isLocal);
  
          EJSDeployedSupport s = threadData.getMethodContext();
          if (s != null && !threadData.isLifeCycleMethodTransactionActive()) {
              // Then update the EJSDeployedSupport object for the current method
              // invokation with the new ContainerTx and UOWCoordinator.       d139352-2
              s.currentTx = tx;//d140003.19
              s.uowCookie.setTransactionalUOW(uowId); // d139352-2
  
              // If currentTx is changed while running under UOWManager.runUnderUOW, then
              // the value may not be valid during postInvoke; indicate reset needed.
              if (s.ivRunUnderUOW > 0) {
                  s.resetCurrentTx = true;
              }
  
              //d458031 - start: The task name will be set in TranStrategry when a local Tx is begun, so no need to set
              //it here, only set a task name when the user begins a tx.
              if (!isLocal) {
                  EJBMethodInfoImpl methodInfo = s.methodInfo;
                  //Get the bean class name and method name which will be used as the default JPA task name.
                  String taskName = methodInfo.getBeanClassName() + "." + methodInfo.getMethodName();
                  //d458031 TO-DO: JPA should provide a constanst class containing the "key" we should use rather than hard coding it.
                  ivUOWManager.putResource("com.ibm.websphere.profile", taskName);
                  if (isTraceOn && tc.isEventEnabled()) {
                      Tr.event(tc, "Set JPA task name: " + taskName);
                  }
              }
              //d458031 - end
          }
  
          // d165585 Begins
          if (isTraceOn && TETxLifeCycleInfo.isTraceEnabled()) { // PQ74774
              String idStr;
              if (isLocal) {
                  if (uowId != null) {
                      idStr = "" + System.identityHashCode(uowId);
                      TETxLifeCycleInfo.traceLocalTxBegin(idStr, "Local Tx Begin");
                  }
              } else {
                  idStr = uowId.toString();
                  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.traceUserTxBegin(idStr, "User Tx Begin");
              }
          } // PQ74774
            // d165585 Ends
  
          // Starting with EJB 2.0 deployed jars, when the global tran
          // commits, a local tran will be started, so a new ContainerTx
          // will be created and must be setup.  If a ContainerTx does
          // not exist, then this must be an EJB 1.1 jar.                    d125430
          if (tx != null) {
              BeanO beanO = threadData.getCallbackBeanO();
              UserTransactionEnabledContext utxBeanO = (UserTransactionEnabledContext) beanO;
  
              if (utxBeanO.getModuleVersion() == BeanMetaData.J2EE_EJB_VERSION_1_1) {
                  tx.setIsolationLevel(utxBeanO.getIsolationLevel());
              }
  
              // Enlist the bean with the ContainerTx
              if (utxBeanO.enlist(tx)) {
                  activator.enlistBean(tx, beanO);
              }
          }
  
          if (isTraceOn && tc.isEntryEnabled())
              Tr.exit(tc, "processTxContextChange");
      }