anchor.diff:  %%--------------------------------------------------------------------
   -spec update(op_logic:req()) -> op_logic:update_result().
   update(#op_req{data = Data, gri = #gri{id = SpaceId, aspect = {index, IndexName}}}) ->
  -    Spatial = maps:get(<<"spatial">>, Data, undefined),
  -
       MapFunctionRaw = maps:get(<<"application/javascript">>, Data),
       MapFun = utils:ensure_defined(MapFunctionRaw, <<>>, undefined),
  -    IndexOptions = prepare_index_options(Data),
  -
  -    Providers = case maps:get(<<"providers[]">>, Data, undefined) of
  -        undefined -> undefined;
  -        ProviderId when is_binary(ProviderId) -> [ProviderId];
  -        ProvidersList when is_list(ProvidersList) -> ProvidersList
  -    end,
  -    op_logic_utils:ensure_space_support(SpaceId, Providers),
  -
  -    case index:update(SpaceId, IndexName, MapFun,  IndexOptions, Spatial, Providers) of
  +
  +    case index:update(
  +        SpaceId, IndexName,
  +        MapFun,
  +        prepare_index_options(Data),
  +        maps:get(<<"spatial">>, Data, undefined),
  +        maps:get(<<"providers[]">>, Data, undefined)
  +    ) of
           {error, ?EINVAL} ->
               ?ERROR_BAD_VALUE_AMBIGUOUS_ID(<<"index_name">>);
           Result ->
               Result
  -    end;
  -
  -update(_) ->
  -    ?ERROR_NOT_SUPPORTED.
  +    end.
   
   
   %%--------------------------------------------------------------------
  
positive.code:     {ok, EffSpaces};
  
  get(#op_req{client = Cl, gri = #gri{id = SpaceId, aspect = instance}}, _) ->
      SessionId = Cl#client.id,
      op_logic_utils:ensure_space_supported_locally(SpaceId),
  
      case space_logic:get(SessionId, SpaceId) of
          {ok, #document{value = #od_space{name = Name, providers = ProvidersIds}}} ->
              Providers = lists:map(fun(ProviderId) ->
                  {ok, ProviderName} = provider_logic:get_name(ProviderId),
  
negative.code: %%--------------------------------------------------------------------
  -spec delete(op_logic:req()) -> op_logic:delete_result().
  delete(#op_req{gri = #gri{id = SpaceId, aspect = {index, IndexName}}}) ->
      case index:delete(SpaceId, IndexName) of
          {error, ?EINVAL} ->
              ?ERROR_BAD_VALUE_AMBIGUOUS_ID(<<"index_name">>);
  