code: @Override
  	public void revert() {
  		LOGGER.info(LOCKING_MARKER, "DAOF.revert()");
  		//We do NOT need a new txId here, revert() is just called when commit() fails.
  
  		//Empty file buffers. For now we just flush them.
  		file.flush(); //TODO revert for file???
  		
  		RootPage rootPage = sm.getRootPage();
  		//revert --> back to previous (expected) schema-tx-ID
  		schemaIndex.revert(rootPage.getSchemIndexPage(), txContext.getSchemaTxId());
  		//We use the historic page count to avoid page-leaking
  		freeIndex.revert(rootPage.getFMSPage(), rootPage.getFSMPageCount());
  		//We do NOT reset the OID count. That may cause OID leaking(does it?), but the OIDs are
  		//still assigned to uncommitted objects.
  		oidIndex.revert(rootPage.getOidIndexPage());
  	}
docs: This can be called after a failed commit (or JDO flush()). In case the root pages have not
  been rewritten, this method will revert existing changes.