For the past few weeks, we've had svn_wc_context_t, which is a thin
wrapper around svn_wc__db_t, the primary datastructure for maintaining
information about accessing working copies in wc-ng. Several public
libsvn_wc APIs have been rev'd to use svn_wc_context_t, and eventually
any API which currently uses an access baton will use the new context
handle.
Right now, svn_wc__db_t accesses do not open the underlying data
store, so those APIs which have converted over still require an
adm_access baton to be opened and help for the duration of the call,
which is pretty goofy. The baton isn't passed into the API, just
opened before the call, and then closed afterward.
This is counter-intuitive and not a long-term solution, but I'm not
quite sure what bit of the library should be responsible for opening
and maintaining handles to svn_wc_db_t objects, and how we will handle
that during the transition period from adm_access to wc_context. The
long-term solution, I think, is to let svn_wc__db_t open stuff as
needed, and then it all get's closed when that object gets destroyed,
but I just can't figure out how to get there from here.
Thoughts?
-Hyrum
------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2363295
Received on 2009-06-18 20:58:41 CEST