On 10.10.2014 18:08, Julian Foad wrote:
> Lieven Govaerts wrote:
>>> ra_serf makes a series of valid requests (200 OK) before finally
>>> asking the server for REPLAY of r0. In this case the server is
>>> googlecode.com. In response to the invalid REPLAY it gave a 500 Server
>>> Error response. I will attach a pcap.
>> Googlecode returns the 500 Internal Error, svn.apache.org will happily
>> return the content of r0.
>> IMO googlecode is doing the wrong thing here, there's nothing special
>> about r0 (it's empty, but still a valid revision).
> Hi Lieven. I disagree with that point. There are two different meanings of "revision": a
> snapshot, and a change between one snapshot and the next. r0 is a valid snapshot, but it is not a valid *change*. A "replay" request sounds to me like a request to tell us what changed between snapshot (X - 1) and snapshot X. (Although it would be *possible* to define that a replay request for r0 should respond that the difference between revision (-1) and revision (0) is a valid, empty difference, in my opinion it is not logical to do so.)
Sure it is. The root of the repository was created in r0; it did not
exist in r-1.
The reason why a replay of r0 is nonsense is that r0 is the same in
/every/ repository, so the target repo always has the r0 of the source
-- except the revprops, of course.
(I don't pretend to know how replay handles revprops.)
Received on 2014-10-10 18:54:16 CEST