Log Message: |
We frequently use property name constants in conjunction with hash containers.
Provide new wrappers around apr_hash_get and apr_hash_set that accept such
string constants and statically determine their size. That minimizes the
hash access costs.
Mass change hash get and set calls for SVN_PROP_* constants.
* subversion/include/svn_hash.h
(svn_hash_gets,
svn_hash_sets): Doxygen-ize the docstring
(svn_hash_gets_fixed_key,
svn_hash_sets_fixed_key): define new apr_hash_* wrapper
* subversion/libsvn_client/add.c
(svn_client__get_all_auto_props): use faster hash wrappers with SVN_PROP_*
* subversion/libsvn_client/commit_util.c
(svn_client__ensure_revprop_table): ditto
* subversion/libsvn_client/copy.c
(repos_to_wc_copy_single): ditto
* subversion/libsvn_client/list.c
(svn_client__ra_stat_compatible): ditto
* subversion/libsvn_client/log.c
(pre_15_receiver): ditto
* subversion/libsvn_client/merge.c
(prepare_merge_props_changed, merge_file_added, merge_dir_added,
merge_dir_deleted): ditto
* subversion/libsvn_client/mergeinfo.c
(svn_client__get_wc_or_repos_mergeinfo_catalog): ditto
* subversion/libsvn_fs_base/tree.c
(txn_body_get_mergeinfo_data_and_entries,
txn_body_get_mergeinfo_for_path): same
* subversion/libsvn_fs_fs/fs_fs.c
(write_revision_zero): same
* subversion/libsvn_fs_fs/tree.c
(crawl_directory_dag_for_mergeinfo, get_mergeinfo_for_path_internal): same
* subversion/libsvn_ra/deprecated.c
(svn_ra_get_commit_editor2): same
* subversion/libsvn_ra_local/ra_plugin.c
(svn_ra_local__get_commit_editor, svn_ra_local__get_commit_ev2): same
* subversion/libsvn_ra_svn/client.c
(ra_svn_commit, ra_svn_log): same
* subversion/libsvn_repos/commit.c
(svn_repos__get_commit_ev2): same
* subversion/libsvn_repos/delta.c
(delta_proplists): same
* subversion/libsvn_repos/deprecated.c
(svn_repos_get_commit_editor4): same
* subversion/libsvn_repos/dump.c
(dump_node, write_revision_record):
* subversion/libsvn_repos/fs-wrap.c
(svn_repos_fs_begin_txn_for_commit2, svn_repos_fs_begin_txn_for_commit,
svn_repos_fs_revision_proplist): same
* subversion/libsvn_repos/log.c
(fill_log_entry): same
* subversion/libsvn_repos/reporter.c
(get_revision_info): same
* subversion/libsvn_repos/rev_hunt.c
(svn_repos_get_committed_info): same
* subversion/libsvn_subr/compat.c
(svn_compat_log_revprops_clear, svn_compat_log_revprops_out): same
* subversion/libsvn_wc/status.c
(collect_ignore_patterns): same
* subversion/mod_dav_svn/activity.c
(dav_svn__create_txn): same
* subversion/mod_dav_svn/lock.c
(append_locks): same
* subversion/svndumpfilter/svndumpfilter.c
(output_revision): same
* subversion/svnmucc/svnmucc.c
(execute, sanitize_log_sources): same
* subversion/svnrdump/load_editor.c
(new_node_record): same
* subversion/svnserve/serve.c
(commit): same
* subversion/svnsync/svnsync.c
(replay_rev_started): same
[Most of this got reverted in r1483610]
[Remainder reverted in r1484181]
|