You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Bert Huijben <be...@qqmail.nl> on 2015/07/01 04:13:54 UTC
Re: svn commit: r1688511 - /subversion/trunk/subversion/tests/cmdline/svnadmin_tests.py
It looks like this patch accidentally removes a line from the test?
Bert
From: Stefan Fuhrmann
Sent: Tuesday, June 30, 2015 9:50 PM
To: commits@subversion.apache.org
Author: stefan2
Date: Tue Jun 30 19:50:46 2015
New Revision: 1688511
URL: http://svn.apache.org/r1688511
Log:
Fix svnadmin_tests.py 52 failures with pre-cooked repositories.
Reported by: brane
* subversion/tests/cmdline/svnadmin_tests.py
(is_sharded): New utility function.
(fsfs_pack_non_sharded): Skip test if the repo is sharded after all.
Also get rid of the useless patch_format call.
Modified:
subversion/trunk/subversion/tests/cmdline/svnadmin_tests.py
Modified: subversion/trunk/subversion/tests/cmdline/svnadmin_tests.py
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/svnadmin_tests.py?rev=1688511&r1=1688510&r2=1688511&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/cmdline/svnadmin_tests.py (original)
+++ subversion/trunk/subversion/tests/cmdline/svnadmin_tests.py Tue Jun 30 19:50:46 2015
@@ -249,6 +249,18 @@ def patch_format(repo_dir, shard_size):
os.chmod(format_path, 0666)
open(format_path, 'wb').write(new_contents)
+def is_sharded(repo_dir):
+ """Return whether the FSFS repository REPO_DIR is sharded."""
+
+ format_path = os.path.join(repo_dir, "db", "format")
+ contents = open(format_path, 'rb').read()
+
+ for line in contents.split("\n"):
+ if line.startswith("layout sharded"):
+ return True
+
+ return False
+
def load_and_verify_dumpstream(sbox, expected_stdout, expected_stderr,
revs, check_props, dump, *varargs):
"""Load the array of lines passed in DUMP into the current tests'
@@ -3074,7 +3086,10 @@ def fsfs_pack_non_sharded(sbox):
# Configure two files per shard to trigger packing.
sbox.build(create_wc = False,
minor_version = min(svntest.main.options.server_minor_version,3))
- patch_format(sbox.repo_dir, shard_size=2)
+
+ # Skip for pre-cooked sharded repositories
+ if is_sharded(sbox.repo_dir):
+ raise svntest.Skip('sharded pre-cooked repository')
svntest.actions.run_and_verify_svnadmin(
None, [], "upgrade", sbox.repo_dir)
Re: svn commit: r1688511 - /subversion/trunk/subversion/tests/cmdline/svnadmin_tests.py
Posted by Stefan Fuhrmann <st...@wandisco.com>.
On Wed, Jul 1, 2015 at 4:13 AM, Bert Huijben <be...@qqmail.nl> wrote:
> It looks like this patch accidentally removes a line from the test?
>
Nope, that was intentional (as mentioned in the commit message).
Best case, patch_format is a no-op for non-shareded repos.
Worst case, it messes up the format file (should never happen, but ...)
-- Stefan^2.
>
>
> *From:* Stefan Fuhrmann <st...@apache.org>
> *Sent:* Tuesday, June 30, 2015 9:50 PM
> *To:* commits@subversion.apache.org
>
> Author: stefan2
> Date: Tue Jun 30 19:50:46 2015
> New Revision: 1688511
>
> URL: http://svn.apache.org/r1688511
> Log:
> Fix svnadmin_tests.py 52 failures with pre-cooked repositories.
>
> Reported by: brane
>
> * subversion/tests/cmdline/svnadmin_tests.py
> (is_sharded): New utility function.
> (fsfs_pack_non_sharded): Skip test if the repo is sharded after all.
> Also get rid of the useless patch_format call.
>
> Modified:
> subversion/trunk/subversion/tests/cmdline/svnadmin_tests.py
>
> Modified: subversion/trunk/subversion/tests/cmdline/svnadmin_tests.py
> URL:
> http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/svnadmin_tests.py?rev=1688511&r1=1688510&r2=1688511&view=diff
>
> ==============================================================================
> --- subversion/trunk/subversion/tests/cmdline/svnadmin_tests.py (original)
> +++ subversion/trunk/subversion/tests/cmdline/svnadmin_tests.py Tue Jun 30
> 19:50:46 2015
> @@ -249,6 +249,18 @@ def patch_format(repo_dir, shard_size):
> os.chmod(format_path, 0666)
> open(format_path, 'wb').write(new_contents)
>
> +def is_sharded(repo_dir):
> + """Return whether the FSFS repository REPO_DIR is sharded."""
> +
> + format_path = os.path.join(repo_dir, "db", "format")
> + contents = open(format_path, 'rb').read()
> +
> + for line in contents.split("\n"):
> + if line.startswith("layout sharded"):
> + return True
> +
> + return False
> +
> def load_and_verify_dumpstream(sbox, expected_stdout, expected_stderr,
> revs, check_props, dump, *varargs):
> """Load the array of lines passed in DUMP into the current tests'
> @@ -3074,7 +3086,10 @@ def fsfs_pack_non_sharded(sbox):
> # Configure two files per shard to trigger packing.
> sbox.build(create_wc = False,
> minor_version =
> min(svntest.main.options.server_minor_version,3))
> - patch_format(sbox.repo_dir, shard_size=2)
> +
> + # Skip for pre-cooked sharded repositories
> + if is_sharded(sbox.repo_dir):
> + raise svntest.Skip('sharded pre-cooked repository')
>
> svntest.actions.run_and_verify_svnadmin(
> None, [], "upgrade", sbox.repo_dir)
>
>
>
Re: svn commit: r1688511 - /subversion/trunk/subversion/tests/cmdline/svnadmin_tests.py
Posted by Stefan Fuhrmann <st...@wandisco.com>.
On Wed, Jul 1, 2015 at 4:13 AM, Bert Huijben <be...@qqmail.nl> wrote:
> It looks like this patch accidentally removes a line from the test?
>
Nope, that was intentional (as mentioned in the commit message).
Best case, patch_format is a no-op for non-shareded repos.
Worst case, it messes up the format file (should never happen, but ...)
-- Stefan^2.
>
>
> *From:* Stefan Fuhrmann <st...@apache.org>
> *Sent:* Tuesday, June 30, 2015 9:50 PM
> *To:* commits@subversion.apache.org
>
> Author: stefan2
> Date: Tue Jun 30 19:50:46 2015
> New Revision: 1688511
>
> URL: http://svn.apache.org/r1688511
> Log:
> Fix svnadmin_tests.py 52 failures with pre-cooked repositories.
>
> Reported by: brane
>
> * subversion/tests/cmdline/svnadmin_tests.py
> (is_sharded): New utility function.
> (fsfs_pack_non_sharded): Skip test if the repo is sharded after all.
> Also get rid of the useless patch_format call.
>
> Modified:
> subversion/trunk/subversion/tests/cmdline/svnadmin_tests.py
>
> Modified: subversion/trunk/subversion/tests/cmdline/svnadmin_tests.py
> URL:
> http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/svnadmin_tests.py?rev=1688511&r1=1688510&r2=1688511&view=diff
>
> ==============================================================================
> --- subversion/trunk/subversion/tests/cmdline/svnadmin_tests.py (original)
> +++ subversion/trunk/subversion/tests/cmdline/svnadmin_tests.py Tue Jun 30
> 19:50:46 2015
> @@ -249,6 +249,18 @@ def patch_format(repo_dir, shard_size):
> os.chmod(format_path, 0666)
> open(format_path, 'wb').write(new_contents)
>
> +def is_sharded(repo_dir):
> + """Return whether the FSFS repository REPO_DIR is sharded."""
> +
> + format_path = os.path.join(repo_dir, "db", "format")
> + contents = open(format_path, 'rb').read()
> +
> + for line in contents.split("\n"):
> + if line.startswith("layout sharded"):
> + return True
> +
> + return False
> +
> def load_and_verify_dumpstream(sbox, expected_stdout, expected_stderr,
> revs, check_props, dump, *varargs):
> """Load the array of lines passed in DUMP into the current tests'
> @@ -3074,7 +3086,10 @@ def fsfs_pack_non_sharded(sbox):
> # Configure two files per shard to trigger packing.
> sbox.build(create_wc = False,
> minor_version =
> min(svntest.main.options.server_minor_version,3))
> - patch_format(sbox.repo_dir, shard_size=2)
> +
> + # Skip for pre-cooked sharded repositories
> + if is_sharded(sbox.repo_dir):
> + raise svntest.Skip('sharded pre-cooked repository')
>
> svntest.actions.run_and_verify_svnadmin(
> None, [], "upgrade", sbox.repo_dir)
>
>
>