anchor.diff:                   {ok, any(), state()} |
                    {error, not_found, state()} |
                    {error, term(), state()}.
  -get(Bucket, Key, #state{ref=Ref}=State) ->
  -    BitcaskKey = term_to_binary({Bucket, Key}),
  +get(Bucket, Key, #state{ref=Ref, key_vsn=KVers}=State) ->
  +    BitcaskKey = make_bk(KVers, Bucket, Key),
       case bitcask:get(Ref, BitcaskKey) of
           {ok, Value} ->
               {ok, Value, State};
  
positive.code: -spec put(riak_object:bucket(), riak_object:key(), [index_spec()], binary(), state()) ->
                   {ok, state()} |
                   {error, term(), state()}.
  put(Bucket, PrimaryKey, _IndexSpecs, Val, #state{ref=Ref}=State) ->
      BitcaskKey = term_to_binary({Bucket, PrimaryKey}),
      case bitcask:put(Ref, BitcaskKey, Val) of
          ok ->
              {ok, State};
  
negative.code:     case lists:member(async_fold, Opts) of
          true ->
              ReadOpts = set_mode(read_only, BitcaskOpts),
              
              BucketFolder =
                  fun() ->
                          case bitcask:open(filename:join(DataRoot, DataFile), ReadOpts) of
                              Ref1 when is_reference(Ref1) ->
                                  try
                                      {Acc1, _} =
  