code: public void commit( SynchronizationBarrier barrier ) throws JournalException
      {
      	// Refuse any further operation in case of previous failure
      	if (failing)
      		throw new JournalException("Store journal is failing");
      	
      	// Register as a barrier participant
      	if (barrier != null)
      		barrier.addParty();
          
          boolean newFlushRequired;
          synchronized (journalWriteQueue)
          {
          	writeCommit(barrier);
          	
          	newFlushRequired = !flushingJournal;
          	if (newFlushRequired)
          		flushingJournal = true;
          	unflushedJournalSize = 0;
          }
          
          if (newFlushRequired)
          {
  	        // Flush journal to store (asynchronous)
  	        try
  	        {
  	        	asyncTaskManager.execute(flushJournalAsyncTask);
  	        }
  	    	catch (JMSException e)
  	    	{
  	    		throw new JournalException("Cannot flush journal asynchronously : "+e);
  	    	}
          }
      }
docs: Commit the journal (asynchronous)