* subversion/libsvn_fs_fs/rep-cache-db.sql
  (STMT_CREATE_SCHEMA): Don't enable auto vaccuum on a database that doesn't
    shrink to avoid unneeded bookkeeping, and to release the write lock as
    soon as possible.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442080 13f79535-47bb-0310-9956-ffa450edef68
Improve DAG node / path lookup performance in FSFS.  Since this is a hot
path in many fs_repo-based functions (like fs_verify), 20 .. 30% time
saved here can easily become significant.

The idea here is that get_dag() already has knowledge about the PATH
parameter and does not actually use all the result data returned by
open_path(). So, define a number of flags that allow a caller to tell
open_path() where it may take short-cuts based on the context.

* subversion/libsvn_fs_fs/tree.c
  (dag_node_cache_set): add comment to document a rationale
  (enum open_path_flags_t): declare further flags
  (open_path): support the new flags to short-circuit portions of code
  (get_dag,
   fs_closest_copy,
   get_mergeinfo_for_path_internal): provide flags to open_path()


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442088 13f79535-47bb-0310-9956-ffa450edef68
Indentation fixes.

* subversion/libsvn_wc/wc_db.c
  (scan_deletion_txn, svn_wc__db_op_depth_moved_to): Add missing whitespace
   between keyword and opening bracket in several places.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442153 13f79535-47bb-0310-9956-ffa450edef68
Get correct layer for layered moved-to.

* subversion/libsvn_wc/wc-queries.sql
  (STMT_SELECT_HIGHEST_WORKING_NODE): New.

* subversion/libsvn_wc/wc_db_update_move.c
  (update_moved_away_conflict_victim): Use STMT_SELECT_HIGHEST_WORKING_NODE.

* subversion/tests/libsvn_wc/op-depth-test.c
  (test_funcs): Mark layered_moved_to PASS.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442165 13f79535-47bb-0310-9956-ffa450edef68
Remove the packages directory.

The contents are no longer up to date or useful.  The removal was discussed
on the dev list here: http://svn.haxx.se/dev/archive-2013-01/0528.shtml



git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442167 13f79535-47bb-0310-9956-ffa450edef68
Layered moved-to doesn't work yet.

* subversion/tests/libsvn_wc/op-depth-test.c
  (layered_moved_to): Extend.
  (test_funcs): Mark layered_moved_to XFAIL.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442177 13f79535-47bb-0310-9956-ffa450edef68
* subversion/libsvn_client/merge.c
  (notify_merge_begin): Tweak the number of begin merge notifications for
    non ancestrical merges.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442285 13f79535-47bb-0310-9956-ffa450edef68
* subversion/libsvn_wc/wc_db.c
  (db_read_inherited_props): Remove unused argument.
  (svn_wc__db_read_inherited_props): Remove unneeded db call.
     Update caller.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442301 13f79535-47bb-0310-9956-ffa450edef68
* subversion/svn/svn.c
  (svn_cl__cmd_table): Make 'svn help resolve' output easier to understand.
   The previous text implied that the PATH argument was ignored unless
   the --accept option was given, which isn't the case.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442308 13f79535-47bb-0310-9956-ffa450edef68
Do non-recursive resolving in op-depth-tests to allow
layered_moved_to to PASS.

* subversion/tests/libsvn_wc/utils.h
  (sbox_wc_resolve): Add depth parameter.

* subversion/tests/libsvn_wc/utils.c
  (sbox_wc_resolve): Add depth parameter.
  (sbox_wc_resolved): Adjust call.

* subversion/tests/libsvn_wc/op-depth-test.c 
  (move_update, update_prop_mod_into_moved, nested_move_update,
   move_update_conflicts, move_update_delete_mods, move_in_delete, 
   switch_move, move_replace, layered_moved_to): Adjust call.
  (test_funcs): Mark layered_moved_to PASS.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442315 13f79535-47bb-0310-9956-ffa450edef68
Resolve the pool lifetime issue uncovered by committing r1442301.

* subversion/libsvn_wc/wc_db.c
  (read_cached_iprops_baton_t): Remove baton.
  (db_read_cached_iprops): Use standard argument method as a baton is no longer
    needed with the new with transaction macro.
  (svn_wc__db_read_cached_iprops): Update caller.
  (db_read_inherited_props): Pass the right pool to db_read_cached_iprops, as
    we just shallow copy these values later in this function.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442325 13f79535-47bb-0310-9956-ffa450edef68
* subversion/svn/info-cmd.c
  (print_info_xml): Don't segfault when repos_root_url is non-null, but URL is.
     (Currently repos_root_URL is null for tree conflicts, caused by a bug that
      I'm about to fix.)


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442335 13f79535-47bb-0310-9956-ffa450edef68
* subversion/tests/libsvn_wc/op-depth-test.c 
  (layered_moved_to): Extend to cover more cases.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442339 13f79535-47bb-0310-9956-ffa450edef68
* subversion/libsvn_client/deprecated.c
  (svn_client_uuid_from_path2): Use new public api instead of internal api.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442349 13f79535-47bb-0310-9956-ffa450edef68
Combine two svn_wc__node_repos_* apis into one. Fix some corner cases in the
remaining function to properly calculate urls on all cases of shadowed nodes.

* subversion/include/private/svn_wc_private.h
  (svn_wc__node_get_repos_info): Add arguments. Update documentation.
  (svn_wc__node_get_repos_relpath): Remove function.

* subversion/libsvn_client/cleanup.c
  (svn_client_upgrade): Update caller.

* subversion/libsvn_client/commit_util.c
  (harvest_copy_committables): Update caller.

* subversion/libsvn_client/diff.c
  (make_repos_relpath): Update caller.

* subversion/libsvn_client/externals.c
  (switch_dir_external): Update caller.
  (handle_external_item_change): Update caller.

* subversion/libsvn_client/merge.c
  (open_target_wc): Update caller. Avoid adding error cases.
  (calculate_left_hand_side): Update caller.

* subversion/libsvn_client/mergeinfo.c
  (svn_client__get_wc_mergeinfo_catalog): Update caller, by combining calls.
  (svn_client_mergeinfo_get_merged): Update caller.
  (svn_client_mergeinfo_log2): Rename variable to match common practice.
     Update caller.

* subversion/libsvn_wc/info.c
  (svn_wc__get_info): Fetch repository information on the parent directory,
    not the tree conflict victim to avoid getting path not found.
    (requires r1442335, to avoid a segfault.)

* subversion/libsvn_wc/node.c
  (svn_wc__internal_get_repos_info): Add two arguments. Return an error on
    not-versioned (like svn_wc__internal_get_repos_relpath used to).
    Fetch id and repos-relpath.
  (svn_wc__internal_get_repos_relpath): Remove function.
  (svn_wc__node_get_repos_info): Add two arguments. Update caller.
  (svn_wc__node_get_repos_relpath): Remove function.

* subversion/libsvn_client/util.c
  (svn_client_get_repos_root): Update caller. Copy error handling from wc
    function to keep public api stable.

* subversion/libsvn_client/ra.c
  (svn_client__open_ra_session_internal): Update caller.

* subversion/libsvn_wc/wc.h
  (svn_wc__internal_get_repos_info): Add revision and repos_relpath arguments.
  (svn_wc__internal_get_repos_relpath): Remove function.

* subversion/tests/libsvn_wc/entries-compat.c
  (test_access_baton_like_locking): Update caller.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442353 13f79535-47bb-0310-9956-ffa450edef68
In the merge code: Use the batons to detect whether we are at the root of an
added tree, instead of doing hash table lookups.

* subversion/libsvn_client/merge.c
  (record_update_add): Remove unneeded code.
  (merge_file_added,
   merge_dir_added): Record the roots of added trees.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442372 13f79535-47bb-0310-9956-ffa450edef68
* subversion/libsvn_client/merge.c
  (merge_node_absent): Resolve theoretical error leak.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442380 13f79535-47bb-0310-9956-ffa450edef68
Remove a mostly unused kind variable from the merge target baton.

* subversion/libsvn_client/merge.c
  (merge_target_t): Remove kind.
  (do_merge): Remove kind check.
  (open_target_wc): Return an error when the target is not versioned instead
    of asking this from the caller.
  (svn_client_find_automatic_merge_no_wc): Don't fill value.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442530 13f79535-47bb-0310-9956-ffa450edef68
Remove a diff helper function under that assumption that there are no entries
without urls in WC-NG.

* subversion/libsvn_client/diff.c
  (convert_to_url): Remove function.
  (diff_prepare_repos_repos,
   diff_repos_wc): Call svn_wc__node_get_url directly in local path case.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442538 13f79535-47bb-0310-9956-ffa450edef68
For easier code navigation: separate cleanup from upgrade in libsvn_client.
We decided that after 1.7 explicit upgrades will still be required.

No functional changes, but gen-make required.

* subversion/libsvn_client/cleanup.c
  (*): Remove everything upgrade specific.

* subversion/libsvn_client/upgrade.c
  (*): Remove everything cleanup specific.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1442545 13f79535-47bb-0310-9956-ffa450edef68