couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Filipe David Manana <fdman...@apache.org>
Subject Re: couch_server.erl - is couch_dbs_by_name table correclty used in terminate() function ?
Date Wed, 15 Jun 2011 09:47:27 GMT
It seems to me you're right about it.

Do you want to provide a small patch to fix it? (Ideally in a Jira ticket)

Thanks Andrey


On Wed, Jun 15, 2011 at 10:30 AM, Andrey Somov
<trophybase@googlemail.com> wrote:
> Hi all,
> when I read the code in couch_server.terminate() function I see the
> following in the trunk:
>
> terminate(_Reason, _Srv) ->
>    [couch_util:shutdown_sync(Pid) || {_, {Pid, _LruTime}} <-
>            ets:tab2list(couch_dbs_by_name)],
>    ok.
>
> It looks like the values in the couch_dbs_by_name table are tuples of 2
> terms.
> But when I read the rest of the code I see that the values are always
> 3-term-tuples:
>
> {opened, Pid, LruTime} or {opening, Opener, [Froms]}
>
> I must admit I do not understand how the code in the terminate() may work.
> Is it just a bug ?
>
>
> -
> Andrey
>



-- 
Filipe David Manana,
fdmanana@gmail.com, fdmanana@apache.org

"Reasonable men adapt themselves to the world.
 Unreasonable men adapt the world to themselves.
 That's why all progress depends on unreasonable men."

Mime
View raw message