You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Daniel Näslund <da...@longitudo.com> on 2010/08/14 19:45:06 UTC

Re: svn commit: r985514 - in /subversion/branches/performance/subversion: include/svn_io.h libsvn_subr/stream.c libsvn_subr/subst.c

On Sat, Aug 14, 2010 at 03:46:13PM -0000, stefan2@apache.org wrote:
> Author: stefan2
> Date: Sat Aug 14 15:46:13 2010
> New Revision: 985514
> 
> URL: http://svn.apache.org/viewvc?rev=985514&view=rev
> Log:
> Extend the stream API by three functions:
> svn_stream_move_mark() to move an existing mark by some delta
> svn_stream_supports_mark() tells whether getting, setting and moving marks is supported by this stream
> 
> * subversion/include/svn_io.h
>   (svn_io_move_mark_fn_t, svn_io_buffered_fn_t):
>    declare new vtable function pointers
>   (svn_stream_set_move_mark, svn_stream_set_buffered):
>    declare functions to set these vtable pointers
>   (svn_stream_supports_mark, svn_stream_move_mark, svn_stream_buffered):
>    declare new stream API functions
> 
> * subversion/libsvn_subr/stream.c
>   (svn_stream_t): extend the vtable part by the new functions
>   (svn_stream_create): add initialization code for the new vtable entries
>   (svn_stream_set_move_mark, svn_stream_set_buffered):
>    implement new vtable modifiers
>   (svn_stream_supports_mark, svn_stream_buffered, svn_stream_buffered):
>    implement new stream generic API functions
>   (move_mark_handler_empty, buffered_handler_empty, svn_stream_empty):
>    implement support for the new stream API in empty streams
>   (move_mark_handler_disown, buffered_handler_disown, svn_stream_disown):
>    implement support for the new stream API in disowned streams
>   (move_mark_handler_apr, buffered_handler_apr, stream_from_aprfile,
>    svn_stream_from_aprfile_range_readonly):
>    implement support for the new stream API in APR file based streams
>   (move_mark_handler_stringbuf, buffered_handler_stringbuf,
>    svn_stream_from_stringbuf):
>    implement support for the new stream API in stringbuf streams
> 
> * subversion/libsvn_subr/subst.c
>   (translated_stream_move_mark, translated_stream_buffered,
>    svn_subst_stream_translated):
>    implement support for the new stream API in translated streams

Out of curiosity, why are you touching the svn_stream_mark() code on
the performance branch? AFAIK, svn_stream_mark() is only used in the
patch code. What performance benefits are you hoping to achieve?

Daniel