code: @Override
      public void forget(Xid xid) throws XAException {
          try {
              LOG.debug("PhynixxXAResource[" + this.getId() + "]:forget forget with Xid");
              if (xid == null)
                  throw new XAException(XAException.XAER_INVAL);
  
              XATransactionalBranch<C> transactionalBranch = this.xaConnection.toGlobalTransactionBranch();
              // must find connection for this transaction
              if (transactionalBranch == null) {
                  return; //
              }
              this.xaConnection.closeTransactionalBranch(xid);
  
              this.xaConnection.close();
  
          } finally {
              // stop monitoring the timeout
              this.setTimeOutActive(false);
  
          }
      }
docs: finds the transactional branch of the current XAResource associated with
  die XID and closes it without commit or explicit rollback
  
  @param xid
  @throws XAException