[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: FS vtable common_pool and pack_fs/recover

From: Philip Martin <philip.martin_at_wandisco.com>
Date: Tue, 21 Aug 2012 20:42:55 +0100

Daniel Shahaf <d.s_at_daniel.shahaf.name> writes:

> Philip Martin wrote on Tue, Aug 21, 2012 at 18:00:23 +0100:
>> Functions like fs_library_vtable_t.pack_fs and
>> fs_library_vtable_t.recover that don't take the common_pool parameter
>> pass the pool parameter to fs_serialized_init. I think that means these
>> functions should only be used from a single threaded process.
>>
>> Is that correct? If so we should document it or change the functions to
>> handle the common_pool.
>>
>
> I think the correct fix is to propagate common_pool to have fs_pack()
> and pass it as to the appropriate parameter of fs_serialized_init().

Yes, I think that would be correct. It's probably possible to backport
to 1.7 since these functions are all private.

>> I'm not sure how the absence of common_pool affects the BDB
>> implementations.
>
> Is it even used? A quick grep in libsvn_fs_base suggests that only fs.c
> has variables by that name; therein, only svn_fs_base__init() uses them;
> and that function seems to have no callers(!?).

It's called by the FS dynamic loader via a function pointer when
get_library_vtable_direct calls initfunc.

-- 
Certified & Supported Apache Subversion Downloads:
http://www.wandisco.com/subversion/download
Received on 2012-08-21 21:43:31 CEST

This is an archived mail posted to the Subversion Dev mailing list.