code: public void fail(Object msgId) {
  		LOG.warn("Message failed: " + msgId);
          this.pendingMessages.clear();
          this.toCommit.clear();
  		synchronized(this.recoveryMutex){
  		    this.hasFailures = true;
  		}
  	}
docs: /*
  Will only be called if we're transactional or not AUTO_ACKNOWLEDGE