anchor.diff:  
   new(Dir, Opts) when (is_list(Dir) orelse is_binary(Dir)) , is_list(Opts) ->
       {file_size, FileSize} = proplists:lookup(file_size, Opts),
  -    DataSize = proplists:get_value(data_size, Opts, ?DATA_SIZE),
  -    case new(FileSize, DataSize, Dir) of
  +    case new_(FileSize, Dir) of
           {ok, M} ->
               {ok, apply_opts(M, Opts)};
           E ->
               E
       end.
   
  -new(FileSize, DataSize, Dir) when
  +new_(FileSize, Dir) when
         is_integer(FileSize), FileSize > 0,
         is_binary(Dir) ->
  -    new(FileSize, DataSize, binary_to_list(Dir));
  -
  -new(FileSize, DataSize, Dir) ->
  +    new_(FileSize, binary_to_list(Dir));
  +
  +new_(FileSize, Dir) ->
       IdxFile = filename:join([Dir, "mstore"]),
       case open_mfile(IdxFile) of
  -        {ok, F, _IS, _Metrics} when F =/= FileSize ->
  +        {ok, F, _Metrics} when F =/= FileSize ->
               {error, filesize_missmatch};
  -        {ok, _F, IS, _Metrics} when IS =/= DataSize ->
  -            {error, itemsize_missmatch};
  -        {ok, F, IS,  Metrics} ->
  -            {ok, #mstore{size=F, dir=Dir, metrics=Metrics, data_size=IS}};
  +        {ok, F,  Metrics} ->
  +            {ok, #mstore{size=F, dir=Dir, metrics=Metrics}};
           _ ->
               file:make_dir(Dir),
  -            MStore = #mstore{size=FileSize, dir=Dir,
  -                             data_size=DataSize},
  +            MStore = #mstore{size=FileSize, dir=Dir},
               ok = file:write_file(IdxFile, index_header(MStore)),
               {ok, MStore}
       end.
  
positive.code:                        _ ->
                             Acc1
                     end,
              do_get(S, FS, Dir, DataSize, Metric, R, Acc2);
          {error,not_found} ->
              mfile:close(F),
              Acc1 = <<Acc/binary, (mmath_bin:empty(Count))/binary>>,
              do_get(S, FS, Dir, DataSize, Metric, R, Acc1);
          eof ->
              mfile:close(F),
              Acc1 = <<Acc/binary, (mmath_bin:empty(Count))/binary>>,
              do_get(S, FS, Dir, DataSize, Metric, R, Acc1);
          E ->
              mfile:close(F),
              E
  
negative.code:         {max_files, pos_integer()}.
  
  -type new_opt() ::
          {file_size, pos_integer()}.
  
  %%--------------------------------------------------------------------
  %% Public API
  