public synchronized Optional<SnapshotMetaData> release(String name) throws IOException {
  log.info("Deleting the snapshot named {} for core {}",name,solrCore.getName());
  SnapshotMetaData result=nameToDetailsMapping.remove(Preconditions.checkNotNull(name));
  if (result != null) {
    boolean success=false;
    try {
      persist();
      success=true;
    }
  finally {
      if (!success) {
        nameToDetailsMapping.put(name,result);
      }
    }
  }
  return Optional.ofNullable(result);
}

public synchronized Optional < SnapshotMetaData > release ( String name ) throws IOException { log . info ( "Deleting the snapshot named {} for core {}" , name , solrCore . getName ( ) ) ; SnapshotMetaData result = nameToDetailsMapping . remove ( Preconditions . checkNotNull ( name ) ) ; if ( result != null ) { boolean success = false ; try { persist ( ) ; success = true ; } finally { if ( ! success ) { nameToDetailsMapping . put ( name , result ) ; } } } return Optional . ofNullable ( result ) ; }
this method deletes a previously created snapshot ( if any ) .
