Author: julianfoad
Date: Tue Nov 14 15:54:29 2017
New Revision: 1815225
URL: http://svn.apache.org/viewvc?rev=1815225&view=rev
Log:
On the 'shelve' branch: Catch up with trunk@1815224.
Modified:
subversion/branches/shelve/ (props changed)
subversion/branches/shelve/Makefile.in
subversion/branches/shelve/build.conf
subversion/branches/shelve/build/generator/gen_win_dependencies.py
subversion/branches/shelve/build/run_tests.py
subversion/branches/shelve/subversion/libsvn_fs_fs/transaction.c
subversion/branches/shelve/subversion/libsvn_repos/reporter.c
subversion/branches/shelve/subversion/tests/cmdline/basic_tests.py
subversion/branches/shelve/subversion/tests/cmdline/svnadmin_tests.py
subversion/branches/shelve/subversion/tests/cmdline/svntest/main.py
subversion/branches/shelve/win-tests.py
Propchange: subversion/branches/shelve/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Nov 14 15:54:29 2017
@@ -98,4 +98,4 @@
/subversion/branches/verify-at-commit:1462039-1462408
/subversion/branches/verify-keep-going:1439280-1546110
/subversion/branches/wc-collate-path:1402685-1480384
-/subversion/trunk:1801593-1813856
+/subversion/trunk:1801593-1815224
Modified: subversion/branches/shelve/Makefile.in
URL:
http://svn.apache.org/viewvc/subversion/branches/shelve/Makefile.in?rev=1815225&r1=1815224&r2=1815225&view=diff
==============================================================================
--- subversion/branches/shelve/Makefile.in (original)
+++ subversion/branches/shelve/Makefile.in Tue Nov 14 15:54:29 2017
@@ -595,6 +595,9 @@ check: bin @TRANSFORM_LIBTOOL_SCRIPTS@ $
if test "$(FSFS_COMPRESSION)" != ""; then \
flags="--fsfs-compression $(FSFS_COMPRESSION) $$flags"; \
fi; \
+ if test "$(FSFS_DIR_DELTIFICATION)" != ""; then \
+ flags="--fsfs-dir-deltification $(FSFS_DIR_DELTIFICATION) $$flags";\
+ fi; \
LD_LIBRARY_PATH='$(auth_plugin_dirs):$(LD_LIBRARY_PATH)' \
$(PYTHON) $(top_srcdir)/build/run_tests.py \
--config-file $(top_srcdir)/subversion/tests/tests.conf \
Modified: subversion/branches/shelve/build.conf
URL:
http://svn.apache.org/viewvc/subversion/branches/shelve/build.conf?rev=1815225&r1=1815224&r2=1815225&view=diff
==============================================================================
--- subversion/branches/shelve/build.conf (original)
+++ subversion/branches/shelve/build.conf Tue Nov 14 15:54:29 2017
@@ -1471,8 +1471,7 @@ external-lib = $(SVN_SASL_LIBS)
[openssl]
type = lib
-external-lib = $(SVN_OPENSSL_LIBS)
-msvc-libs = ssleay32.lib libeay32.lib
+external-lib = $(SVN_OPENSSL_LIBS) $(SVN_LIBCRYPTO_LIBS)
[intl]
type = lib
Modified: subversion/branches/shelve/build/generator/gen_win_dependencies.py
URL:
http://svn.apache.org/viewvc/subversion/branches/shelve/build/generator/gen_win_dependencies.py?rev=1815225&r1=1815224&r2=1815225&view=diff
==============================================================================
--- subversion/branches/shelve/build/generator/gen_win_dependencies.py
(original)
+++ subversion/branches/shelve/build/generator/gen_win_dependencies.py Tue Nov
14 15:54:29 2017
@@ -878,16 +878,26 @@ class GenDependenciesBase(gen_base.Gener
int(vermatch.group(4)))
openssl_version = vermatch.group(1)
+ libcrypto = 'libcrypto'
+ libssl = 'libssl'
+ versuffix = '-%d_%d' % version[0:2]
+ if version < (1, 1, 0):
+ libcrypto = 'libeay32'
+ libssl = 'ssleay32'
+ versuffix = ''
+
self._libraries['openssl'] = SVNCommonLibrary('openssl', inc_dir, lib_dir,
- 'ssleay32.lib',
+ '%s.lib' % (libssl,),
openssl_version,
- dll_name='ssleay32.dll',
+ dll_name='%s%s.dll' %
+ (libssl, versuffix),
dll_dir=bin_dir)
- self._libraries['libeay32'] = SVNCommonLibrary('openssl', inc_dir, lib_dir,
- 'libeay32.lib',
+ self._libraries['libcrypto'] = SVNCommonLibrary('openssl', inc_dir,
lib_dir,
+ '%s.lib' % (libcrypto,),
openssl_version,
- dll_name='libeay32.dll',
+ dll_name='%s%s.dll' %
+ (libcrypto, versuffix),
dll_dir=bin_dir)
def _find_perl(self, show_warnings):
Modified: subversion/branches/shelve/build/run_tests.py
URL:
http://svn.apache.org/viewvc/subversion/branches/shelve/build/run_tests.py?rev=1815225&r1=1815224&r2=1815225&view=diff
==============================================================================
--- subversion/branches/shelve/build/run_tests.py (original)
+++ subversion/branches/shelve/build/run_tests.py Tue Nov 14 15:54:29 2017
@@ -33,7 +33,7 @@
[--httpd-version=<version>] [--httpd-whitelist=<version>]
[--config-file=<file>] [--ssl-cert=<file>]
[--exclusive-wc-locks] [--memcached-server=<url:port>]
- [--fsfs-compression=<type>]
+ [--fsfs-compression=<type>] [--fsfs-dir-deltification=<true|false>]
<abs_srcdir> <abs_builddir>
<prog ...>
@@ -278,6 +278,8 @@ class TestHarness:
cmdline.append('--memcached-server=%s' % self.opts.memcached_server)
if self.opts.fsfs_compression is not None:
cmdline.append('--fsfs-compression=%s' % self.opts.fsfs_compression)
+ if self.opts.fsfs_dir_deltification is not None:
+ cmdline.append('--fsfs-dir-deltification=%s' %
self.opts.fsfs_dir_deltification)
self.py_test_cmdline = cmdline
@@ -1028,6 +1030,8 @@ def create_parser():
help='Use memcached server at specified URL (FSFS only)')
parser.add_option('--fsfs-compression', action='store', type='str',
help='Set compression type (for fsfs)')
+ parser.add_option('--fsfs-dir-deltification', action='store', type='str',
+ help='Set directory deltification option (for fsfs)')
parser.set_defaults(set_log_level=None)
return parser
Modified: subversion/branches/shelve/subversion/libsvn_fs_fs/transaction.c
URL:
http://svn.apache.org/viewvc/subversion/branches/shelve/subversion/libsvn_fs_fs/transaction.c?rev=1815225&r1=1815224&r2=1815225&view=diff
==============================================================================
--- subversion/branches/shelve/subversion/libsvn_fs_fs/transaction.c (original)
+++ subversion/branches/shelve/subversion/libsvn_fs_fs/transaction.c Tue Nov 14
15:54:29 2017
@@ -2697,6 +2697,8 @@ svn_fs_fs__set_proplist(svn_fs_t *fs,
{
noderev->prop_rep = apr_pcalloc(pool, sizeof(*noderev->prop_rep));
noderev->prop_rep->txn_id = *svn_fs_fs__id_txn_id(noderev->id);
+ SVN_ERR(set_uniquifier(fs, noderev->prop_rep, pool));
+ noderev->prop_rep->revision = SVN_INVALID_REVNUM;
SVN_ERR(svn_fs_fs__put_node_revision(fs, noderev->id, noderev, FALSE,
pool));
}
@@ -3259,7 +3261,8 @@ write_final_rev(const svn_fs_id_t **new_
? SVN_FS_FS__ITEM_TYPE_DIR_PROPS
: SVN_FS_FS__ITEM_TYPE_FILE_PROPS;
SVN_ERR(svn_fs_fs__get_proplist(&proplist, fs, noderev, pool));
-
+ noderev->prop_rep->txn_id = *txn_id;
+ SVN_ERR(set_uniquifier(fs, noderev->prop_rep, pool));
noderev->prop_rep->revision = rev;
if (ffd->deltify_properties)
@@ -3328,14 +3331,11 @@ write_final_rev(const svn_fs_id_t **new_
}
}
- /* don't serialize SHA1 for dirs to disk (waste of space) */
+ /* don't serialize SHA1 for dir content to disk (waste of space) */
+ /* ### Could clients record bogus last-changed-revisions (issue #4700)? */
if (noderev->data_rep && noderev->kind == svn_node_dir)
noderev->data_rep->has_sha1 = FALSE;
- /* don't serialize SHA1 for props to disk (waste of space) */
- if (noderev->prop_rep)
- noderev->prop_rep->has_sha1 = FALSE;
-
/* Workaround issue #4031: is-fresh-txn-root in revision files. */
noderev->is_fresh_txn_root = FALSE;
Modified: subversion/branches/shelve/subversion/libsvn_repos/reporter.c
URL:
http://svn.apache.org/viewvc/subversion/branches/shelve/subversion/libsvn_repos/reporter.c?rev=1815225&r1=1815224&r2=1815225&view=diff
==============================================================================
--- subversion/branches/shelve/subversion/libsvn_repos/reporter.c (original)
+++ subversion/branches/shelve/subversion/libsvn_repos/reporter.c Tue Nov 14
15:54:29 2017
@@ -973,8 +973,8 @@ update_entry(report_baton_t *b, svn_revn
if (s_root == NULL)
SVN_ERR(get_source_root(b, &s_root, s_rev));
- SVN_ERR(svn_fs_props_different(&changed, s_root, s_path,
- b->t_root, t_path, pool));
+ SVN_ERR(svn_fs_props_changed(&changed, s_root, s_path,
+ b->t_root, t_path, pool));
if (!changed)
SVN_ERR(svn_fs_contents_changed(&changed, s_root, s_path,
b->t_root, t_path, pool));
Modified: subversion/branches/shelve/subversion/tests/cmdline/basic_tests.py
URL:
http://svn.apache.org/viewvc/subversion/branches/shelve/subversion/tests/cmdline/basic_tests.py?rev=1815225&r1=1815224&r2=1815225&view=diff
==============================================================================
--- subversion/branches/shelve/subversion/tests/cmdline/basic_tests.py
(original)
+++ subversion/branches/shelve/subversion/tests/cmdline/basic_tests.py Tue Nov
14 15:54:29 2017
@@ -3168,7 +3168,7 @@ def null_update_last_changed_revision(sb
'--show-item', 'last-changed-revision')
@Issue(4700)
-@XFail()
+@XFail(svntest.main.is_fs_type_bdb)
def null_prop_update_last_changed_revision(sbox):
"null 'property update' updates last changed rev"
Modified: subversion/branches/shelve/subversion/tests/cmdline/svnadmin_tests.py
URL:
http://svn.apache.org/viewvc/subversion/branches/shelve/subversion/tests/cmdline/svnadmin_tests.py?rev=1815225&r1=1815224&r2=1815225&view=diff
==============================================================================
--- subversion/branches/shelve/subversion/tests/cmdline/svnadmin_tests.py
(original)
+++ subversion/branches/shelve/subversion/tests/cmdline/svnadmin_tests.py Tue
Nov 14 15:54:29 2017
@@ -1676,12 +1676,12 @@ def verify_non_utf8_paths(sbox):
if line == b"A\n":
# replace 'A' with a latin1 character -- the new path is not valid UTF-8
fp_new.write(b"\xE6\n")
- elif line == b"text: 1 279 32 32 d63ecce65d8c428b86f4f8b0920921fe\n":
+ elif line == b"text: 1 340 32 32 a6be7b4cf075fd39e6a99eb69a31232b\n":
# phys, PLAIN directories: fix up the representation checksum
- fp_new.write(b"text: 1 279 32 32 b50b1d5ed64075b5f632f3b8c30cd6b2\n")
- elif line == b"text: 1 292 44 32 a6be7b4cf075fd39e6a99eb69a31232b\n":
+ fp_new.write(b"text: 1 340 32 32 f2e93e73272cac0f18fccf16f224eb93\n")
+ elif line == b"text: 1 340 44 32 a6be7b4cf075fd39e6a99eb69a31232b\n":
# phys, deltified directories: fix up the representation checksum
- fp_new.write(b"text: 1 292 44 32 f2e93e73272cac0f18fccf16f224eb93\n")
+ fp_new.write(b"text: 1 340 44 32 f2e93e73272cac0f18fccf16f224eb93\n")
elif line == b"text: 1 6 31 31 90f306aa9bfd72f456072076a2bd94f7\n":
# log addressing: fix up the representation checksum
fp_new.write(b"text: 1 6 31 31 db2d4a0bad5dff0aea9a288dec02f1fb\n")
@@ -3350,7 +3350,7 @@ def dump_no_op_change(sbox):
svntest.actions.run_and_verify_svn(expected, [], 'log', '-v',
sbox2.repo_url + '/bar')
-@XFail() # This test will XPASS on FSFS if rep-caching is disabled.
+@XFail(svntest.main.is_fs_type_bdb)
@Issue(4623)
def dump_no_op_prop_change(sbox):
"svnadmin dump with no-op property change"
Modified: subversion/branches/shelve/subversion/tests/cmdline/svntest/main.py
URL:
http://svn.apache.org/viewvc/subversion/branches/shelve/subversion/tests/cmdline/svntest/main.py?rev=1815225&r1=1815224&r2=1815225&view=diff
==============================================================================
--- subversion/branches/shelve/subversion/tests/cmdline/svntest/main.py
(original)
+++ subversion/branches/shelve/subversion/tests/cmdline/svntest/main.py Tue Nov
14 15:54:29 2017
@@ -1043,7 +1043,8 @@ def _post_create_repos(path, minor_versi
shutil.copy(options.config_file, confpath)
if options.memcached_server is not None or \
- options.fsfs_compression is not None and \
+ options.fsfs_compression is not None or \
+ options.fsfs_dir_deltification is not None and \
os.path.exists(confpath):
with open(confpath, 'r') as conffile:
newlines = []
@@ -1051,6 +1052,10 @@ def _post_create_repos(path, minor_versi
if line.startswith('# compression ') and \
options.fsfs_compression is not None:
line = 'compression = %s\n' % options.fsfs_compression
+ if line.startswith('# enable-dir-deltification ') and \
+ options.fsfs_dir_deltification is not None:
+ line = 'enable-dir-deltification = %s\n' % \
+ options.fsfs_dir_deltification
newlines += line
if options.memcached_server is not None and \
line == '[memcached-servers]\n':
@@ -1739,6 +1744,8 @@ class TestSpawningThread(threading.Threa
args.append('--dump-load-cross-check')
if options.fsfs_compression:
args.append('--fsfs-compression=' + options.fsfs_compression)
+ if options.fsfs_dir_deltification:
+ args.append('--fsfs-dir-deltification=' + options.fsfs_dir_deltification)
result, stdout_lines, stderr_lines = spawn_process(command, 0, False, None,
*args)
@@ -2153,6 +2160,8 @@ def _create_parser(usage=None):
help='Use memcached server at specified URL (FSFS only)')
parser.add_option('--fsfs-compression', action='store', type='str',
help='Set compression type (for fsfs)')
+ parser.add_option('--fsfs-dir-deltification', action='store', type='str',
+ help='Set directory deltification option (for fsfs)')
# most of the defaults are None, but some are other values, set them here
parser.set_defaults(
Modified: subversion/branches/shelve/win-tests.py
URL:
http://svn.apache.org/viewvc/subversion/branches/shelve/win-tests.py?rev=1815225&r1=1815224&r2=1815225&view=diff
==============================================================================
--- subversion/branches/shelve/win-tests.py (original)
+++ subversion/branches/shelve/win-tests.py Tue Nov 14 15:54:29 2017
@@ -192,6 +192,7 @@ memcached_dir = None
skip_c_tests = None
dump_load_cross_check = None
fsfs_compression = None
+fsfs_dir_deltification = None
for opt, val in opts:
if opt in ('-h', '--help'):
@@ -288,6 +289,8 @@ for opt, val in opts:
run_memcached = 1
elif opt == '--fsfs-compression':
fsfs_compression = val
+ elif opt == '--fsfs-dir-deltification':
+ fsfs_dir_deltification = val
# Calculate the source and test directory names
abs_srcdir = os.path.abspath("")
@@ -1114,6 +1117,7 @@ if not test_javahl and not test_swig:
opts.skip_c_tests = skip_c_tests
opts.dump_load_cross_check = dump_load_cross_check
opts.fsfs_compression = fsfs_compression
+ opts.fsfs_dir_deltification = fsfs_dir_deltification
th = run_tests.TestHarness(abs_srcdir, abs_builddir,
log_file, fail_log_file, opts)
old_cwd = os.getcwd()