You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by "Peter N. Lundblad" <pe...@famlundblad.se> on 2004/08/31 19:57:31 UTC

Re: svn commit: r10788 - in trunk/subversion: include libsvn_subr


On Tue, 31 Aug 2004 lundblad@tigris.org wrote:

> Author: lundblad
> Date: Tue Aug 31 14:20:47 2004
> New Revision: 10788
>
> Modified:
>    trunk/subversion/include/svn_utf.h
>    trunk/subversion/libsvn_subr/cmdline.c
>    trunk/subversion/libsvn_subr/utf.c
> Log:
> Fix issue #2016.  Cache UTF8 translation handles in a global hash table
> instead of in the current pool, which improves performance, especially on
> Windows.
>
> * include/svn_utf.h (svn_utf_initialize): New function.
> * libsvn_subr/utf.c (xlate_handle_mutex, xlate_handle_hash): New variables.
>   (xlate_handle_node_t): New struct.
>   (xlate_cleanup, svn_utf_initialize, put_xlate_handle_node): New functions.
>   (get_xlate_handle_node): Renamed from get_xlate_handle and rewritten using
>   a global hash table and locking in MT environments.
>   (get_ntou_xlate_handle_node, get_uton_xlate_handle_node,
>   svn_utf_stringbuf_to_utf8, svn_utf_string_to_utf8, svn_utf_cstring_to_utf8,
>   svn_utf_cstring_to_utf8_ex, svn_utf_stringbuf_from_utf8,
>   svn_utf_string_from_utf8, svn_utf_cstring_from_utf8,
>   svn_utf_cstring_from_utf8_ex, svn_utf_cstring_from_utf8_string): Use
>   {get,put}_xlate_handle_node for the
>   xlate handle.
> * libsvn_subr/cmdline.c (svn_cmdline_initialize): Initialize UTF-8 routines.
>
>
I added a note on this in issue #2016. I don't know how to procede here.
This is a performance regression, but the patch is far from trivial IMO.
Since we can't add new API:s in 1.1.x, x>0, a solution, if we don't want
this in 1.1.0, would be to introduce an empty svn_utf_initialize().
TortoiseSvn can always patch its svn build. Then we can test the patch for
1.1.1.

OPinions?

Regards,
//Peter

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org