On 7 September 2015 at 10:30, Branko Čibej <brane_at_wandisco.com> wrote:
> On 07.09.2015 09:15, ivan_at_apache.org wrote:
>> Author: ivan
>> Date: Mon Sep 7 07:15:25 2015
>> New Revision: 1701564
>>
>> URL: http://svn.apache.org/r1701564
>> Log:
>> Reduce difference between Windows and non-Windows implementation of
>> install_stream.
>>
>> * subversion/libsvn_subr/stream.c
>> (install_close): Remove #ifdef WIN32
>> (svn_stream__create_for_install): Always setup flush on close stream
>> handler.
>> (svn_stream__install_stream): Close temporary file before rename on all
>> platforms.
>> (svn_stream__install_get_info): Obtain file info from file handle on all
>> platforms.
>> (svn_stream__install_delete): Close temporary file before delete on all
>> platforms.
>
>
> Why do you think this is a good idea? I know you can't move/delete an
> open file on Windows without jumping through hoops that APR doesn't
> provide, but you certainly can do that on Unix and if memory serves,
> that actually helps performance in some cases where remote file systems
> are involved.
>
Before this patch temporary file was closed anyway before
rename/delete in svn_stream_close() handler for temporary file on
non-Windows platform. Windows specific code postponed this to
rename/delete stage. The r1701564 makes this code the same on Windows
and non-Windows.
--
Ivan Zhakov
Received on 2015-09-07 09:39:29 CEST