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.
Received on 2014-08-10 18:14:39 CEST