> -----Original Message-----
> From: Ryan Schmidt [mailto:subversion-2009a_at_ryandesign.com]
> Sent: woensdag 15 april 2009 14:25
> To: Jay Foad
> Cc: users_at_subversion.tigris.org
> Subject: Re: export of invalid revision
>
> On Apr 15, 2009, at 06:27, Jay Foad wrote:
>
> > I get:
> >
> > $ svn checkout -r 1000000
> > https://llvm.org/svn/llvm-project/llvm/trunk/include/llvm/ADT
> > svn: No such revision 1000000
> >
> > but:
> >
> > $ svn export -r 1000000
> > https://llvm.org/svn/llvm-project/llvm/trunk/include/llvm/ADT foo
> > A foo
> > A foo/ScopedHashTable.h
> > [...]
> > A foo/APFloat.h
> > Exported revision 69159.
> >
> > Instead of diagnosing that I've asked for a valid revision, svn export
> > has quietly given me a different revision instead. Is this a bug?
> >
> > I'm using:
> >
> > $ svn --version
> > svn, version 1.5.1 (r32289)
> > compiled Dec 31 2008, 06:38:09
>
> Issue confirmed on svn 1.6.1 on Mac OS X 10.4.11.
>
> "svn ls -r 1000000 DIRURL" also produces a listing, unexpectedly.
>
> "svn cat -r 1000000 FILEURL" also produces the file contents,
> unexpectedly.
>
> I would call these bugs.
Confirmed on svn 1.6.1. Also with svn info.
I'm not sure if I would call it a bug; moving this thread to dev_at_s.t.o for
further discussion on whether this is a bug or not.
All these functions use svn_client__ra_session_from_path() to parse the
revision conversion. This in turn calls svn_client__get_revision_number()
which has this code fragment:
/* Final check -- if our caller provided a youngest revision, and
the number we wound up with is younger than that revision, we need
to stick to our caller's idea of "youngest". */
if (youngest_rev
&& SVN_IS_VALID_REVNUM(*youngest_rev)
&& SVN_IS_VALID_REVNUM(*revnum)
&& (*revnum > *youngest_rev))
*revnum = *youngest_rev;
Bert
------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1727669
Received on 2009-04-15 16:08:13 CEST