On the 'fs-rep-sharing' branch, teach the Berkeley DB backend to
answer the "Did the contents change?" question the same way it did
prior to the introduction of shared representations.
* subversion/libsvn_fs_base/dag.c
(svn_fs_base__things_different): Take the node revisions' data
representation key uniquifiers into account.
git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/fs-rep-sharing@873785 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/subversion/libsvn_fs_base/dag.c b/subversion/libsvn_fs_base/dag.c
index a75293a..1dfcf98 100644
--- a/subversion/libsvn_fs_base/dag.c
+++ b/subversion/libsvn_fs_base/dag.c
@@ -1609,10 +1609,16 @@
*props_changed = (! svn_fs_base__same_keys(noderev1->prop_key,
noderev2->prop_key));
- /* Compare contents keys. */
+ /* Compare contents keys and their (optional) uniquifiers. */
if (contents_changed != NULL)
- *contents_changed = (! svn_fs_base__same_keys(noderev1->data_key,
- noderev2->data_key));
+ *contents_changed =
+ (! (svn_fs_base__same_keys(noderev1->data_key,
+ noderev2->data_key)
+ /* Technically, these uniquifiers aren't used and "keys",
+ but keys are base-36 stringified numbers, so we'll take
+ this liberty. */
+ && (svn_fs_base__same_keys(noderev1->data_key_uniquifier,
+ noderev2->data_key_uniquifier))));
return SVN_NO_ERROR;
}