[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Regression in bindings? 1.7/1.8 vs 1.6

From: Alexey Neyman <stilor_at_att.net>
Date: Sun, 10 Aug 2014 09:14:05 -0700

On Saturday, August 09, 2014 10:50:11 PM Alexey Neyman wrote:
> Hi Subversion developers,
> I am trying to migrate some scripts from 1.6 server that we're currently
> running to a newer SVN version, and encountered something that looks like
> a bug: with 1.7/1.8 the fs.change_node_prop (in Python bindings) is no
> longer able to modify a node's properties unless that node is already
> modified in the transaction being handled.

Correction: "unless that node's ancestor is already modified".

More: if I read back the node property immediately after changing it, the new value is
returned by fs.node_prop even in 1.7/1.8. However, when the transaction is turned into a
revision - the changed value is lost. Also, the dump in 1.7/1.8 still shows the node as
modified - but has no modifications reported on it:

Revision-number: 2
Prop-content-length: 105
Content-length: 105

K 10
V 7
K 8
V 27
K 7
V 4

Node-path: baz
Node-kind: dir
Node-action: change
Prop-content-length: 22
Content-length: 22

K 1
V 1

Node-path: foo/bar
Node-kind: file
Node-action: change

How come the node is marked as changed, but the changes are lost?


> A reproduction script is attached. It yields PASS on 1.6.11 and FAILs on
> 1.7.8 and 1.8.8.
> Is it by design, or a regression? If it is by design - what is the proper
> way to modify a node in a transaction in the newer Subversion?
> Regards,
> Alexey.
Received on 2014-08-10 18:14:39 CEST

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.