code: public void doStartup(ConfigurationProvider cp, boolean isSQLRecoveryLog) {
          if (tc.isDebugEnabled())
              Tr.debug(tc, "doStartup with cp: " + cp + " and flag: " + isSQLRecoveryLog);
  
          // Create an AppId that will be unique for this server to be used in the generation of Xids.
  
          // Locate the user directory in the Liberty install
          String userDirEnv = System.getenv("WLP_USER_DIR");
  
          if (tc.isDebugEnabled())
              Tr.debug(tc, "TMS, WLP_USER_DIR env variable is - " + userDirEnv);
          // Retrieve the server name.
          String serverName = cp.getServerName();
  
          if (tc.isDebugEnabled())
              Tr.debug(tc, "TMS, serverName is - " + serverName);
          // Retrieve the host name
          String hostName = "";
          hostName = AccessController.doPrivileged(new PrivilegedAction<String>() {
              @Override
              public String run() {
  
                  String theHost = "";
                  try {
                      InetAddress addr = InetAddress.getLocalHost();
                      theHost = addr.getCanonicalHostName().toLowerCase();
                  } catch (UnknownHostException e) {
                      theHost = "localhost";
                  }
  
                  return theHost;
              }
          });
  
          byte[] theApplId = createApplicationId(userDirEnv, serverName, hostName);
          cp.setApplId(theApplId);
          if (tc.isDebugEnabled())
              Tr.debug(tc, "TMS, cp - " + cp + " set applid - " + Util.toHexString(theApplId));
          if (!xaFlowCallbacksInitialised) {
              // -------------------------------------------------------
              // Initialize the XA Flow callbacks by
              // attempting to load the test class.
              // -------------------------------------------------------
              if (tc.isDebugEnabled())
                  Tr.debug(tc, "initialise the XA Flow callbacks");
              XAFlowCallbackControl.initialize();
              xaFlowCallbacksInitialised = true;
          }
          if (cp.isRecoverOnStartup()) {
              try {
                  TMHelper.start(cp.isWaitForRecovery());
              } catch (Exception e) {
                  FFDCFilter.processException(e, "com.ibm.ws.transaction.services.TransactionManagerService.doStartup", "60", this);
              }
          }
      }
docs: This method will start log recovery processing.
  
  @param cp