You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by hw...@apache.org on 2010/09/09 17:59:02 UTC
svn commit: r995478 [2/2] - in /subversion/branches/performance: ./
subversion/bindings/javahl/native/
subversion/bindings/javahl/src/org/apache/subversion/javahl/
subversion/bindings/javahl/src/org/tigris/subversion/javahl/
subversion/bindings/javahl/...
Modified: subversion/branches/performance/subversion/libsvn_wc/workqueue.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/workqueue.c?rev=995478&r1=995477&r2=995478&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/workqueue.c (original)
+++ subversion/branches/performance/subversion/libsvn_wc/workqueue.c Thu Sep 9 15:59:00 2010
@@ -59,6 +59,7 @@
#define OP_TMP_SET_TEXT_CONFLICT_MARKERS "tmp-set-text-conflict-markers"
#define OP_TMP_SET_PROPERTY_CONFLICT_MARKER "tmp-set-property-conflict-marker"
#define OP_PRISTINE_GET_TRANSLATED "pristine-get-translated"
+#define OP_POSTUPGRADE "postupgrade"
/* For work queue debugging. Generates output about its operation. */
/* #define DEBUG_WORK_QUEUE */
@@ -186,10 +187,12 @@ run_revert(svn_wc__db_t *db,
svn_wc__db_status_t status;
const char *parent_abspath;
svn_boolean_t conflicted;
+ apr_int64_t val;
/* We need a NUL-terminated path, so copy it out of the skel. */
local_abspath = apr_pstrmemdup(scratch_pool, arg1->data, arg1->len);
- replaced = svn_skel__parse_int(arg1->next, scratch_pool) != 0;
+ SVN_ERR(svn_skel__parse_int(&val, arg1->next, scratch_pool));
+ replaced = (val != 0);
/* magic_changed is extracted further below. */
/* use_commit_times is extracted further below. */
@@ -213,7 +216,8 @@ run_revert(svn_wc__db_t *db,
svn_boolean_t magic_changed;
svn_boolean_t reinstall_working;
- magic_changed = svn_skel__parse_int(arg1->next->next, scratch_pool) != 0;
+ SVN_ERR(svn_skel__parse_int(&val, arg1->next->next, scratch_pool));
+ magic_changed = (val != 0);
/* If there was a magic property change, then we'll reinstall the
working-file to pick up any/all appropriate changes. If there was
@@ -275,8 +279,9 @@ run_revert(svn_wc__db_t *db,
svn_boolean_t use_commit_times;
svn_skel_t *wi_file_install;
- use_commit_times = svn_skel__parse_int(arg1->next->next->next,
- scratch_pool) != 0;
+ SVN_ERR(svn_skel__parse_int(&val, arg1->next->next->next,
+ scratch_pool));
+ use_commit_times = (val != 0);
SVN_ERR(svn_wc__wq_build_file_install(&wi_file_install,
db, local_abspath,
@@ -551,10 +556,12 @@ run_killme(svn_wc__db_t *db,
const char *repos_root_url;
const char *repos_uuid;
svn_error_t *err;
+ apr_int64_t val;
/* We need a NUL-terminated path, so copy it out of the skel. */
dir_abspath = apr_pstrmemdup(scratch_pool, arg1->data, arg1->len);
- adm_only = svn_skel__parse_int(arg1->next, scratch_pool) != 0;
+ SVN_ERR(svn_skel__parse_int(&val, arg1->next, scratch_pool));
+ adm_only = (val != 0);
err = svn_wc__db_base_get_info(&status, NULL, &original_revision,
NULL, NULL, NULL,
@@ -806,9 +813,11 @@ run_base_remove(svn_wc__db_t *db,
svn_revnum_t revision;
const char *repos_relpath, *repos_root_url, *repos_uuid;
svn_wc__db_kind_t kind;
+ apr_int64_t val;
local_abspath = apr_pstrmemdup(scratch_pool, arg1->data, arg1->len);
- keep_not_present = svn_skel__parse_int(arg1->next, scratch_pool) != 0;
+ SVN_ERR(svn_skel__parse_int(&val, arg1->next, scratch_pool));
+ keep_not_present = (val != 0);
if (keep_not_present)
{
@@ -900,13 +909,16 @@ run_deletion_postcommit(svn_wc__db_t *db
svn_revnum_t new_revision;
svn_boolean_t no_unlock;
svn_wc__db_kind_t kind;
+ apr_int64_t val;
/* ### warning: this code has not been vetted for running multiple times */
/* We need a NUL-terminated path, so copy it out of the skel. */
local_abspath = apr_pstrmemdup(scratch_pool, arg1->data, arg1->len);
- new_revision = (svn_revnum_t)svn_skel__parse_int(arg1->next, scratch_pool);
- no_unlock = svn_skel__parse_int(arg1->next->next, scratch_pool) != 0;
+ SVN_ERR(svn_skel__parse_int(&val, arg1->next, scratch_pool));
+ new_revision = (svn_revnum_t)val;
+ SVN_ERR(svn_skel__parse_int(&val, arg1->next->next, scratch_pool));
+ no_unlock = (val != 0);
SVN_ERR(svn_wc__db_read_kind(&kind, db, local_abspath, FALSE, scratch_pool));
@@ -1495,10 +1507,13 @@ run_postcommit(svn_wc__db_t *db,
svn_boolean_t keep_changelist, no_unlock;
const char *tmp_text_base_abspath;
svn_error_t *err;
+ apr_int64_t val;
local_abspath = apr_pstrmemdup(scratch_pool, arg1->data, arg1->len);
- new_revision = (svn_revnum_t)svn_skel__parse_int(arg1->next, scratch_pool);
- changed_date = svn_skel__parse_int(arg1->next->next, scratch_pool);
+ SVN_ERR(svn_skel__parse_int(&val, arg1->next, scratch_pool));
+ new_revision = (svn_revnum_t)val;
+ SVN_ERR(svn_skel__parse_int(&val, arg1->next->next, scratch_pool));
+ changed_date = (apr_time_t)val;
if (arg1->next->next->next->len == 0)
changed_author = NULL;
else
@@ -1520,7 +1535,8 @@ run_postcommit(svn_wc__db_t *db,
else
SVN_ERR(svn_skel__parse_proplist(&new_dav_cache, arg5->next,
scratch_pool));
- keep_changelist = svn_skel__parse_int(arg5->next->next, scratch_pool) != 0;
+ SVN_ERR(svn_skel__parse_int(&val, arg5->next->next, scratch_pool));
+ keep_changelist = (val != 0);
/* Before r927056, this WQ item didn't have this next field. Catch any
* attempt to run this code on a WC having a stale WQ item in it. */
@@ -1533,14 +1549,20 @@ run_postcommit(svn_wc__db_t *db,
arg5->next->next->next->len);
if (arg5->next->next->next->next)
- no_unlock = svn_skel__parse_int(arg5->next->next->next->next,
- scratch_pool) != 0;
+ {
+ SVN_ERR(svn_skel__parse_int(&val, arg5->next->next->next->next,
+ scratch_pool));
+ no_unlock = (val != 0);
+ }
else
no_unlock = TRUE;
if (arg5->next->next->next->next->next)
- changed_rev = svn_skel__parse_int(arg5->next->next->next->next->next,
- scratch_pool);
+ {
+ SVN_ERR(svn_skel__parse_int(&val, arg5->next->next->next->next->next,
+ scratch_pool));
+ changed_rev = (svn_revnum_t)val;
+ }
else
changed_rev = new_revision; /* Behavior before fixing issue #3676 */
@@ -1610,6 +1632,34 @@ svn_wc__wq_add_postcommit(svn_wc__db_t *
}
/* ------------------------------------------------------------------------ */
+/* OP_POSTUPGRADE */
+
+static svn_error_t *
+run_postupgrade(svn_wc__db_t *db,
+ const svn_skel_t *work_item,
+ const char *wri_abspath,
+ svn_cancel_func_t cancel_func,
+ void *cancel_baton,
+ apr_pool_t *scratch_pool)
+{
+ SVN_ERR(svn_wc__wipe_postupgrade(wri_abspath, FALSE,
+ cancel_func, cancel_baton, scratch_pool));
+
+ return SVN_NO_ERROR;
+}
+
+svn_error_t *
+svn_wc__wq_build_postupgrade(svn_skel_t **work_item,
+ apr_pool_t *result_pool)
+{
+ *work_item = svn_skel__make_empty_list(result_pool);
+
+ svn_skel__prepend_str(OP_POSTUPGRADE, *work_item, result_pool);
+
+ return SVN_NO_ERROR;
+}
+
+/* ------------------------------------------------------------------------ */
/* OP_FILE_INSTALL */
@@ -1637,10 +1687,13 @@ run_file_install(svn_wc__db_t *db,
const char *temp_dir_abspath;
svn_stream_t *dst_stream;
const char *dst_abspath;
+ apr_int64_t val;
local_abspath = apr_pstrmemdup(scratch_pool, arg1->data, arg1->len);
- use_commit_times = svn_skel__parse_int(arg1->next, scratch_pool) != 0;
- record_fileinfo = svn_skel__parse_int(arg1->next->next, scratch_pool) != 0;
+ SVN_ERR(svn_skel__parse_int(&val, arg1->next, scratch_pool));
+ use_commit_times = (val != 0);
+ SVN_ERR(svn_skel__parse_int(&val, arg1->next->next, scratch_pool));
+ record_fileinfo = (val != 0);
if (arg4 == NULL)
{
@@ -2116,7 +2169,12 @@ run_record_fileinfo(svn_wc__db_t *db,
local_abspath = apr_pstrmemdup(scratch_pool, arg1->data, arg1->len);
if (arg1->next)
- set_time = svn_skel__parse_int(arg1->next, scratch_pool);
+ {
+ apr_int64_t val;
+
+ SVN_ERR(svn_skel__parse_int(&val, arg1->next, scratch_pool));
+ set_time = (apr_time_t)val;
+ }
if (set_time != 0)
{
@@ -2393,6 +2451,7 @@ static const struct work_item_dispatch d
{ OP_TMP_SET_TEXT_CONFLICT_MARKERS, run_set_text_conflict_markers },
{ OP_TMP_SET_PROPERTY_CONFLICT_MARKER, run_set_property_conflict_marker },
{ OP_PRISTINE_GET_TRANSLATED, run_pristine_get_translated },
+ { OP_POSTUPGRADE, run_postupgrade },
#ifndef SVN_WC__SINGLE_DB
{ OP_KILLME, run_killme },
Modified: subversion/branches/performance/subversion/libsvn_wc/workqueue.h
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/libsvn_wc/workqueue.h?rev=995478&r1=995477&r2=995478&view=diff
==============================================================================
--- subversion/branches/performance/subversion/libsvn_wc/workqueue.h (original)
+++ subversion/branches/performance/subversion/libsvn_wc/workqueue.h Thu Sep 9 15:59:00 2010
@@ -301,6 +301,10 @@ svn_wc__wq_add_postcommit(svn_wc__db_t *
svn_boolean_t no_unlock,
apr_pool_t *scratch_pool);
+svn_error_t *
+svn_wc__wq_build_postupgrade(svn_skel_t **work_item,
+ apr_pool_t *scratch_pool);
+
#ifdef __cplusplus
}
#endif /* __cplusplus */
Modified: subversion/branches/performance/subversion/mod_dav_svn/reports/log.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/mod_dav_svn/reports/log.c?rev=995478&r1=995477&r2=995478&view=diff
==============================================================================
--- subversion/branches/performance/subversion/mod_dav_svn/reports/log.c (original)
+++ subversion/branches/performance/subversion/mod_dav_svn/reports/log.c Thu Sep 9 15:59:00 2010
@@ -311,7 +311,17 @@ dav_svn__log_report(const dav_resource *
else if (strcmp(child->name, "end-revision") == 0)
end = SVN_STR_TO_REV(dav_xml_get_cdata(child, resource->pool, 1));
else if (strcmp(child->name, "limit") == 0)
- limit = atoi(dav_xml_get_cdata(child, resource->pool, 1));
+ {
+ serr = svn_cstring_atoi(&limit,
+ dav_xml_get_cdata(child, resource->pool, 1));
+ if (serr)
+ {
+ derr = dav_svn__convert_err(serr, HTTP_BAD_REQUEST,
+ "Malformed CDATA in element "
+ "\"limit\"", resource->pool);
+ goto cleanup;
+ }
+ }
else if (strcmp(child->name, "discover-changed-paths") == 0)
discover_changed_paths = TRUE; /* presence indicates positivity */
else if (strcmp(child->name, "strict-node-history") == 0)
Modified: subversion/branches/performance/subversion/mod_dav_svn/reports/replay.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/mod_dav_svn/reports/replay.c?rev=995478&r1=995477&r2=995478&view=diff
==============================================================================
--- subversion/branches/performance/subversion/mod_dav_svn/reports/replay.c (original)
+++ subversion/branches/performance/subversion/mod_dav_svn/reports/replay.c Thu Sep 9 15:59:00 2010
@@ -466,10 +466,18 @@ dav_svn__replay_report(const dav_resourc
}
else if (strcmp(child->name, "send-deltas") == 0)
{
+ apr_int64_t parsed_val;
+
cdata = dav_xml_get_cdata(child, resource->pool, 1);
if (! cdata)
return malformed_element_error("send-deltas", resource->pool);
- send_deltas = atoi(cdata);
+ err = svn_cstring_strtoi64(&parsed_val, cdata, 0, 1, 10);
+ if (err)
+ {
+ svn_error_clear(err);
+ return malformed_element_error("send-deltas", resource->pool);
+ }
+ send_deltas = parsed_val ? TRUE : FALSE;
}
}
}
Modified: subversion/branches/performance/subversion/svn/main.c
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/svn/main.c?rev=995478&r1=995477&r2=995478&view=diff
==============================================================================
--- subversion/branches/performance/subversion/svn/main.c (original)
+++ subversion/branches/performance/subversion/svn/main.c Thu Sep 9 15:59:00 2010
@@ -283,7 +283,9 @@ const apr_getopt_option_t svn_cl__option
" "
"ARG may be one of 'LF', 'CR', 'CRLF'")},
{"limit", 'l', 1, N_("maximum number of log entries")},
- {"no-unlock", opt_no_unlock, 0, N_("don't unlock the targets")},
+ {"no-unlock", opt_no_unlock, 0, N_("don't unlock the targets\n"
+ " "
+ "[aliases: --nul, --keep-lock]")},
{"summarize", opt_summarize, 0, N_("show a summary of the results")},
{"remove", opt_remove, 0, N_("remove changelist association")},
{"changelist", opt_changelist, 1,
@@ -399,6 +401,8 @@ const apr_getopt_option_t svn_cl__option
{"iw", opt_ignore_whitespace, 0, NULL},
{"diff", opt_show_diff, 0, NULL},
{"idiff", opt_internal_diff, 0, NULL},
+ {"nul", opt_no_unlock, 0, NULL},
+ {"keep-lock", opt_no_unlock, 0, NULL},
{0, 0, 0, 0},
};
Modified: subversion/branches/performance/subversion/tests/cmdline/copy_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/tests/cmdline/copy_tests.py?rev=995478&r1=995477&r2=995478&view=diff
==============================================================================
--- subversion/branches/performance/subversion/tests/cmdline/copy_tests.py (original)
+++ subversion/branches/performance/subversion/tests/cmdline/copy_tests.py Thu Sep 9 15:59:00 2010
@@ -4701,6 +4701,7 @@ def changed_data_should_match_checkout(s
os.chdir(was_cwd)
os.chdir(wc_dir)
+ verify_out = svntest.verify.UnorderedOutput(verify_out)
svntest.actions.run_and_verify_svn(None, verify_out, [], 'status', '-v')
os.chdir(was_cwd)
Modified: subversion/branches/performance/subversion/tests/cmdline/patch_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/tests/cmdline/patch_tests.py?rev=995478&r1=995477&r2=995478&view=diff
==============================================================================
--- subversion/branches/performance/subversion/tests/cmdline/patch_tests.py (original)
+++ subversion/branches/performance/subversion/tests/cmdline/patch_tests.py Thu Sep 9 15:59:00 2010
@@ -2976,6 +2976,43 @@ def patch_prop_with_fuzz(sbox):
1, # check-props
1) # dry-run
+def patch_git_add_file(sbox):
+ "patch that contains empty files"
+
+ sbox.build()
+ wc_dir = sbox.wc_dir
+ patch_file_path = make_patch_path(sbox)
+
+ new_path = os.path.join(wc_dir, 'new')
+
+ unidiff_patch = [
+ "Index: new\n",
+ "===================================================================\n",
+ "diff --git a/new b/new\n",
+ "new file mode 10644\n",
+ ]
+
+ svntest.main.file_write(patch_file_path, ''.join(unidiff_patch))
+
+ expected_output = [
+ 'A %s\n' % os.path.join(wc_dir, 'new'),
+ ]
+ expected_disk = svntest.main.greek_state.copy()
+ expected_disk.add({'new' : Item(contents="")})
+
+ expected_status = svntest.actions.get_virginal_state(wc_dir, 1)
+ expected_status.add({'new' : Item(status='A ', wc_rev=0)})
+
+ expected_skip = wc.State('', { })
+
+ svntest.actions.run_and_verify_patch(wc_dir, os.path.abspath(patch_file_path),
+ expected_output,
+ expected_disk,
+ expected_status,
+ expected_skip,
+ None, # expected err
+ 1, # check-props
+ 1) # dry-run
########################################################################
#Run the tests
@@ -3005,6 +3042,7 @@ test_list = [ None,
patch_add_path_with_props,
patch_prop_offset,
patch_prop_with_fuzz,
+ patch_git_add_file,
]
if __name__ == '__main__':
Modified: subversion/branches/performance/subversion/tests/cmdline/revert_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/tests/cmdline/revert_tests.py?rev=995478&r1=995477&r2=995478&view=diff
==============================================================================
--- subversion/branches/performance/subversion/tests/cmdline/revert_tests.py (original)
+++ subversion/branches/performance/subversion/tests/cmdline/revert_tests.py Thu Sep 9 15:59:00 2010
@@ -851,29 +851,37 @@ def status_of_missing_dir_after_revert_r
os.path.join(G_path, 'alpha'),
os.path.join(G_path, 'beta')]
+ if svntest.main.wc_is_singledb(wc_dir):
+ # These nodes are not lost in single-db
+ revert_paths += [ os.path.join(G_path, 'pi'),
+ os.path.join(G_path, 'rho'),
+ os.path.join(G_path, 'tau')]
+
expected_output = svntest.verify.UnorderedOutput([
"Reverted '%s'\n" % path for path in revert_paths])
svntest.actions.run_and_verify_svn(None, expected_output, [], "revert", "-R",
G_path)
- ### GS (Oct 11): this is stupid. after a revert, there should be
- ### *NO* status whatsoever. ugh. this status behavior
- ### has been twiddled over the 1.6/1.7 dev cycle, but
- ### it "should" just disappear.
- ### Is it a bug that we'd need to run revert twice to finish the job?
+ # Revert leaves these added nodes as unversioned
expected_output = svntest.verify.UnorderedOutput(
- ["A " + os.path.join(G_path, "pi") + "\n",
- "A " + os.path.join(G_path, "rho") + "\n",
- "A " + os.path.join(G_path, "tau") + "\n"])
+ ["? " + os.path.join(G_path, "pi") + "\n",
+ "? " + os.path.join(G_path, "rho") + "\n",
+ "? " + os.path.join(G_path, "tau") + "\n"])
svntest.actions.run_and_verify_svn(None, expected_output, [],
"status", wc_dir)
svntest.main.safe_rmtree(G_path)
- expected_output = svntest.verify.UnorderedOutput(
- ["! " + G_path + "\n"])
+ if svntest.main.wc_is_singledb(wc_dir):
+ expected_output = svntest.verify.UnorderedOutput(
+ ["! " + G_path + "\n",
+ "! " + os.path.join(G_path, "alpha") + "\n",
+ "! " + os.path.join(G_path, "beta") + "\n"])
+ else:
+ expected_output = svntest.verify.UnorderedOutput(
+ ["! " + G_path + "\n"])
svntest.actions.run_and_verify_svn(None, expected_output, [], "status",
wc_dir)
@@ -1054,8 +1062,7 @@ test_list = [ None,
revert_propdel__file,
revert_replaced_with_history_file_1,
status_of_missing_dir_after_revert,
- Wimp("revert behavior needs better definition",
- status_of_missing_dir_after_revert_replaced_with_history_dir),
+ status_of_missing_dir_after_revert_replaced_with_history_dir,
revert_replaced_with_history_file_2,
revert_tree_conflicts_in_updated_files,
revert_add_over_not_present_dir,
Modified: subversion/branches/performance/subversion/tests/cmdline/update_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/tests/cmdline/update_tests.py?rev=995478&r1=995477&r2=995478&view=diff
==============================================================================
--- subversion/branches/performance/subversion/tests/cmdline/update_tests.py (original)
+++ subversion/branches/performance/subversion/tests/cmdline/update_tests.py Thu Sep 9 15:59:00 2010
@@ -26,6 +26,7 @@
# General modules
import sys, re, os, subprocess
+import time
# Our testing module
import svntest
@@ -5720,6 +5721,33 @@ def update_with_excluded_subdir(sbox):
svntest.actions.run_and_verify_update(wc_dir, expected_output,
expected_disk, expected_status)
+#----------------------------------------------------------------------
+# Test for issue #3471 'svn up touches file w/ lock & svn:keywords property'
+#
+# Marked as XFail until the issue is fixed.
+def update_with_file_lock_and_keywords_property_set(sbox):
+ """update with file lock & keywords property set"""
+ sbox.build()
+
+ wc_dir = sbox.wc_dir
+
+ mu_path = os.path.join(wc_dir, 'A', 'mu')
+ svntest.main.file_append(mu_path, '$Id$')
+ svntest.main.run_svn(None, 'ps', 'svn:keywords', 'Id', mu_path)
+ svntest.main.run_svn(None, 'lock', mu_path)
+ mu_ts_before_update = os.path.getmtime(mu_path)
+
+ # Make sure we are at a different timestamp to really notice a mtime change
+ time.sleep(1)
+
+ # Issue #3471 manifests itself here; The timestamp of 'mu' gets updated
+ # to the time of the last "svn up".
+ sbox.simple_update()
+ mu_ts_after_update = os.path.getmtime(mu_path)
+ if (mu_ts_before_update != mu_ts_after_update):
+ print("The timestamp of 'mu' before and after update does not match.")
+ raise svntest.Failure
+
#######################################################################
# Run the tests
@@ -5792,6 +5820,7 @@ test_list = [ None,
add_moved_file_has_props,
XFail(add_moved_file_has_props2),
update_with_excluded_subdir,
+ XFail(update_with_file_lock_and_keywords_property_set)
]
if __name__ == '__main__':
Modified: subversion/branches/performance/subversion/tests/cmdline/upgrade_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/performance/subversion/tests/cmdline/upgrade_tests.py?rev=995478&r1=995477&r2=995478&view=diff
==============================================================================
--- subversion/branches/performance/subversion/tests/cmdline/upgrade_tests.py (original)
+++ subversion/branches/performance/subversion/tests/cmdline/upgrade_tests.py Thu Sep 9 15:59:00 2010
@@ -594,6 +594,26 @@ def missing_dirs2(sbox):
os.mkdir(sbox.ospath('A/B_new/F'))
svntest.actions.run_and_verify_svn(None, None, [],
'upgrade', sbox.wc_dir)
+ expected_status = svntest.wc.State(sbox.wc_dir,
+ {
+ '' : Item(status=' ', wc_rev='1'),
+ 'A' : Item(status=' ', wc_rev='1'),
+ 'A/mu' : Item(status=' ', wc_rev='1'),
+ 'A/C' : Item(status=' ', wc_rev='1'),
+ 'A/D' : Item(status='~ ', wc_rev='?'),
+ 'A/B' : Item(status=' ', wc_rev='1'),
+ 'A/B/F' : Item(status=' ', wc_rev='1'),
+ 'A/B/E' : Item(status='! ', wc_rev='?'),
+ 'A/B/lambda' : Item(status=' ', wc_rev='1'),
+ 'iota' : Item(status=' ', wc_rev='1'),
+ 'A/B_new' : Item(status='A ', wc_rev='-', copied='+'),
+ 'A/B_new/E' : Item(status='! ', wc_rev='?'),
+ 'A/B_new/F' : Item(status='~ ', wc_rev='?'),
+ 'A/B_new/lambda' : Item(status=' ', wc_rev='-', copied='+'),
+ })
+ if svntest.main.wc_is_singledb(sbox.wc_dir):
+ expected_status.tweak('A/D', 'A/B_new/F', status='! ')
+ run_and_verify_status_no_server(sbox.wc_dir, expected_status)
def delete_and_keep_local(sbox):
"check status delete and delete --keep-local"
@@ -643,7 +663,7 @@ test_list = [ None,
x3_1_4_6,
x3_1_6_12,
missing_dirs,
- XFail(missing_dirs2),
+ missing_dirs2,
XFail(delete_and_keep_local),
]
Modified: subversion/branches/performance/tools/dev/unix-build/Makefile.svn
URL: http://svn.apache.org/viewvc/subversion/branches/performance/tools/dev/unix-build/Makefile.svn?rev=995478&r1=995477&r2=995478&view=diff
==============================================================================
--- subversion/branches/performance/tools/dev/unix-build/Makefile.svn (original)
+++ subversion/branches/performance/tools/dev/unix-build/Makefile.svn Thu Sep 9 15:59:00 2010
@@ -554,7 +554,8 @@ $(NEON_OBJDIR)/.configured: $(NEON_OBJDI
PATH=$(NEON_OBJDIR):$$PATH \
--prefix=$(PREFIX)/neon \
--with-ssl \
- --enable-shared
+ --enable-shared \
+ --without-libproxy
touch $@
# compile neon
Modified: subversion/branches/performance/tools/dev/wc-ng/bump-to-19.py
URL: http://svn.apache.org/viewvc/subversion/branches/performance/tools/dev/wc-ng/bump-to-19.py?rev=995478&r1=995477&r2=995478&view=diff
==============================================================================
--- subversion/branches/performance/tools/dev/wc-ng/bump-to-19.py (original)
+++ subversion/branches/performance/tools/dev/wc-ng/bump-to-19.py Thu Sep 9 15:59:00 2010
@@ -192,6 +192,8 @@ def move_and_shard_pristine_files(old_wc
for basename in os.listdir(old_pristine_dir):
shard = basename[:2]
+ if shard == basename: # already converted
+ continue
old = os.path.join(old_pristine_dir, basename)
new = os.path.join(new_pristine_dir, shard, basename)
os.renames(old, new)