code: @Override
  	public void connectionReleased(IManagedConnectionEvent<C> event) {
  
  		// physical connection is already set free
  		if (!event.getManagedConnection().hasCoreConnection()) {
  			return;
  		}
  
  		C con = event.getManagedConnection().getCoreConnection();
  		if (con == null || !(con instanceof IXADataRecorderAware)) {
  			return;
  		}
  
  		IXADataRecorderAware messageAwareConnection = (IXADataRecorderAware) con;
  		// Transaction is closed and the xaDataRecorder is destroyed ...
  		IXADataRecorder xaDataRecorder = messageAwareConnection
  				.getXADataRecorder();
  		if (xaDataRecorder == null) {
  			return;
  		}
  
  		// if commit/rollback was performed, nothing happened. If no the logged
  		// data is closed but not destroy. So recovery can happen
  		xaDataRecorder.disqualify();
  
  	}
docs: If a dataRecorder is found in this phase it indicates an abnormal program
  flow. Die Transaktion isn't terminate via commit/rollback and this
  connection happens to be recoverd
  
  Therefore the dataRecorder isn't close and keeps it's content to possibly
  be recovered