inconsistent revision numbers

2017-10-30 Thread Norbert Preining
Dear all,

(please Cc, I am not subscribed)

I have blogged about this [1] and both Branko Čibej and Stefan Sperling
asked me to move the discussion here.
[1] 
https://www.preining.info/blog/2017/10/inconsistent-version-numbers-in-subversion/

I describe my problem

* Assume a subversion server and two checkouts
* both checkout are completely clean, no out-of-vcs files, no
  ignored files, no mixed revisions, dead plain svn checkouts.
* Furthermore, assume the following set of commits:

  revision A: file xxx is changed
  revision A+n: file xxx is changed again
  revision A+n+m: file xxx is changed and takes the same content
as back in revision A

  Assume two users:
  User A did 'svn up' between revision A+n and A+n+m
  User B did 'svn up' in [A, A+n), but NOT in [A+n, A+n+m), and
again after A+n+m


In this case, the "last comitted revision" (according to 'svn status -v')
differ:
  User A will get A+n+m
  User B will get A

In practice, in our TeX Live main repository, when I do 'svn status -v'
in my own checkout, I see:
  45627 39121 karl Master/tlpkg/tlpsrc/collection-langgreek.tlpsrc
and when I do it on our master checkout (the one that does the daily
updates for TeX Live) I see:
  45643 44192 karl Master/tlpkg/tlpsrc/collection-langgreek.tlpsrc
(empty initial columns deleted).

The second number here is -- according to 'svn status -h' --
  The last committed revision and last committed author (with -v)
  ^^^

My assumption *was* that this is *consistent* across checkout, but it is
not.

Is this an intended behavior?

All the best

Norbert


--
PREINING Norbert   http://www.preining.info
Accelia Inc. +JAIST +TeX Live +Debian Developer
GPG: 0x860CDC13   fp: F7D8 A928 26E3 16A1 9FA0 ACF0 6CAC A448 860C DC13


Re: inconsistent revision numbers

2017-10-30 Thread Norbert Preining
Hi Branko,

> > * both checkout are completely clean, no out-of-vcs files, no
> >   ignored files, no mixed revisions, dead plain svn checkouts.
> 
> I'm pretty sure they're not, but see below.

Disprove me, please!

> > My assumption *was* that this is *consistent* across checkout, but it is
> > not.
> 
> It should be.

That is good to hear.

> $ svn info --show-item=last-changed-revision 
> svn://tug.org/texlive/trunk/Master/tlpkg/tlpsrc/collection-langgreek.tlpsrc
> 44192

Indeed, I get the same.

> > Is this an intended behavior?
> 
> That depends on what you did. :)

Nothing but very sporadic svn up

> For example, what does `svnversion` say about your working copy?
> Compared to the master?

mine: 45643
master: 45643

> Unless this is a strange artefact of git-svn, I'd recommend an "svn

It is NOT about git-svn, please stop claiming that. I clearly stated
that it is about a standard default svn checkout.

I have *two* checkouts, one over svn and one over git-svn. The reason
why the plain svn is only updated once in a while is that I practically
only use git-svn.



Now for the supposed help of "svn up", even after that I still have
on my local machine:
$ svn status -v | grep collection-langgreek.tlpsrc
 4564339121 karl 
Master/tlpkg/tlpsrc/collection-langgreek.tlpsrc
$

This is BTW not the only file. We have this pattern (due to some users
doing remove/copy/add of the same file sometimes) at about 40 files.

Norbert

--
PREINING Norbert   http://www.preining.info
Accelia Inc. +JAIST +TeX Live +Debian Developer
GPG: 0x860CDC13   fp: F7D8 A928 26E3 16A1 9FA0 ACF0 6CAC A448 860C DC13


Re: inconsistent revision numbers

2017-10-30 Thread Norbert Preining
Hi everyone

thanks for the incredible quick check and ACK.

> Norbert, congratulations, you found a bug that we'd all have expected to
> be impossible. Regarding the "what were we thinking" rant in your blog;
> clearly, we were thinking that this bug could not possibly have crept
> through all our testing. And we were mistaken.

Sorry for the "rant" - take it as what it is - I was soo dead surprised
to find something like this in svn that I thought it must be on purpose
- I couldn't find any other explanation.

Good night from Japan

Norbert

--
PREINING Norbert   http://www.preining.info
Accelia Inc. +JAIST +TeX Live +Debian Developer
GPG: 0x860CDC13   fp: F7D8 A928 26E3 16A1 9FA0 ACF0 6CAC A448 860C DC13


Re: inconsistent revision numbers

2017-10-30 Thread Norbert Preining
> Fixed in https://svn.apache.org/r1813794 and nominated for backport
> to 1.9.8.  Pizzas to stsp :-)

Thanks a lot.

With a fixed/updated subversion client, will I get the updates
automatically, or do I need also an updated server, and also do some
special svn up invocations?

Best

Norbert

--
PREINING Norbert   http://www.preining.info
Accelia Inc. +JAIST +TeX Live +Debian Developer
GPG: 0x860CDC13   fp: F7D8 A928 26E3 16A1 9FA0 ACF0 6CAC A448 860C DC13