docs: @Override public void store(Value v) {
      assert !v.isPersisted();
      new File(_dir, getIceDirectory(v._key)).mkdirs();
      // Nuke any prior file.
      FileOutputStream s = null;
      try {
        s = new FileOutputStream(getFile(v));
      } catch( FileNotFoundException e ) {
        String info = "Key: " + v._key.toString() + "\nEncoded: " + getFile(v);
        throw new RuntimeException(Log.err("Encoding a key to a file failed!\n" + info, e));
      }
      try {
        byte[] m = v.memOrLoad(); // we are not single threaded anymore
        assert m != null && m.length == v._max : "Trying to save partial file: value key=" + v._key + ", length to save=" + m + ", value max size=" + v._max; // Assert not saving partial files
        new AutoBuffer(s.getChannel(), false, Value.ICE).putA1(m, m.length).close();
        v.setdsk();             // Set as write-complete to disk
      } finally {
        Utils.close(s);
      }
    }