code: ThreadContext suspendTransaction() {
          ThreadContextProvider tranContextProvider = AccessController.doPrivileged(tranContextProviderAccessor);
          ThreadContext suspendedTranSnapshot = tranContextProvider == null ? null : tranContextProvider.captureThreadContext(XPROPS_SUSPEND_TRAN, null);
          if (suspendedTranSnapshot != null)
              suspendedTranSnapshot.taskStarting();
          return suspendedTranSnapshot;
      }
docs: Uses the transaction context provider to suspends the currently active transaction or LTC on the thread.
  
  @return ThreadContext instance that must be used to restore the suspended transaction context if returned.
  Null if transaction context is unavailable.