[ 
https://issues.apache.org/jira/browse/SVN-4696?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16159442#comment-16159442
 ] 

Johan Corveleyn commented on SVN-4696:
--------------------------------------

It seems this issue was already confirmed by Bert Huijben in that users@ thread 
you linked to. But it wasn't in the issue tracker yet, so thanks for putting it 
in here (it doesn't mean this issue will be fixed soon -- that depends on 
someone picking it up -- but at least we won't forget about it).

Summarizing some details here in case someone gets to this:
* You probably created this "mirror" with dump+svndumpfilter+load without the 
--drop-all-empty-revs option, and without the --renumber-revs option (at least, 
that's what was described in that users@ thread).
* This created empty revisions with (apparently) no svn:date property.
* Quoting Bert: "The problem you see is that Subversion doesn’t really have an 
index on dates and tries to perform a binary search on the revision properties 
to find out which revision you really want based on the date you passed."

Workaround (as suggested by Bert): you should be able to fix this by setting 
some appropriate svn:date on all the revisions that now don’t have one, as I 
assume your commits in chronological order. For example copying the last seen 
date to all revisions that don't have a date.

Now, I see two issues here:
# svndumpfilter without --drop-all-empty-revs and --renumber-revs should 
preserve the original svn:date's on empty revisions.
# svn should be able to handle (empty) revisions without svn:date property, 
when processing (binary-searching) date-based revision arguments. Not sure what 
the desired behaviour should be here, but we should be able to define some sane 
behaviour.

> svn log -r {yyyy-mm-dd} file:///path/to/repo is not working when time is empty
> ------------------------------------------------------------------------------
>
>                 Key: SVN-4696
>                 URL: https://issues.apache.org/jira/browse/SVN-4696
>             Project: Subversion
>          Issue Type: Bug
>          Components: cmdline client
>    Affects Versions: 1.9.5
>         Environment: door:~$ cat /etc/issue
> Debian GNU/Linux 9 \n \l
> door:~$ uname -a
> Linux door 4.9.0-3-amd64 #1 SMP Debian 4.9.30-2+deb9u3 (2017-08-06) x86_64 
> GNU/Linux
> door:~$ svn --version
> svn, version 1.9.5 (r1770682)
>    compiled Aug  9 2017, 03:04:58 on x86_64-pc-linux-gnu
> ...
>            Reporter: shuaiming zhou
>              Labels: newbie
>
> I mirrored a subdirectory of a master repository, and then {color:red}svn log 
> -r {yyyy-mm-dd}{color}  is no longer working. The returned error breaked my 
> http server with "500 Internal Server Error". It might be a bug.
> {color:red}# svn log -r {2014-06-10} file:///path/hided/repo{color}
> svn: E160000: Failed to find time on revision 4794
> {color:red}# svn log -r 4794  file:///path/hided/repo{color}
> ------------------------------------------------------------------------
> r4794 | (no author) | (no date) | 1 line
> ------------------------------------------------------------------------
> {color:red}# cat /path/hided/repo/db/revprops/4/4794{color}
> END
> I have found this is being discussed before.
> https://mail-archives.apache.org/mod_mbox/subversion-users/201504.mbox/%[email protected]%3E



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to