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
svn:author
V 7
aneyman
K 8
svn:date
V 27
2014-08-10T16:11:08.311598Z
K 7
svn:log
V 4
test
PROPS-END

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

K 1
x
V 1
y
PROPS-END


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

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

Regards,
Alexey.

> 
> 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.

Reply via email to