'посчитать_итератором'(It, {error, _}, Acc) ->
erocksdb:iterator_close(It),
Acc;
'посчитать_итератором'(It, _, Acc) ->
'посчитать_итератором'(It, erocksdb:iterator_move(It, next), Acc + 1).
'разослать_задания'([], _Itr, ItrRec, _Config, _PoolName) ->
{[], ItrRec};
'разослать_задания'(FreeWorkers, _Itr, {error, _} = ItrRec, _Config, _PoolName) ->
{FreeWorkers, ItrRec};
'разослать_задания'([W | FreeWorkers], Itr, {ok, Url, _BinV} = _ItrRec, Config, PoolName) ->
gen_server:cast(whereis(W), {url, Url, self(), PoolName}),
'разослать_задания'(FreeWorkers, Itr, erocksdb:iterator_move(Itr, next), Config, PoolName).
'ошибочные обратно в очередь'(DB, CFErr, CFUrls) ->
{ok, [It]} = erocksdb:iterators(DB, [CFErr], []),
Initial = erocksdb:iterator_move(It, first),
'ошибочные обратно в очередь'(DB, It, Initial, CFErr, CFUrls).
'ошибочные обратно в очередь'(_DB, It, {error, _}, _CFErr, _CFUrls) ->
erocksdb:iterator_close(It);
'ошибочные обратно в очередь'(DB, It, {ok, Url, _BinV}, CFErr, CFUrls) ->
erocksdb:put(DB, CFUrls, Url, <<>>, []),
erocksdb:delete(DB, CFErr, Url, []),
'ошибочные обратно в очередь'(DB, It, erocksdb:iterator_move(It, next), CFErr, CFUrls).