[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: faster client pre-1.0: decrease number of files&folders in .svn

From: solo turn <soloturn99_at_yahoo.com>
Date: 2003-02-07 18:38:47 CET

the 512 dir, 1 file per dir example with
svn up, wc empty (rev 0) to rev 1, runtime 4:40.
280 total
151 _rename
 38 mkdir
 28 __open
 25 chmod
 21 _write
  1 unlink
  1 _poll

delta_dirs costs 253 sec:

sec % fct
--------------------
94 37 close_file
73 29 add_directory
52 20 delta_dirs
24 10 close_directory
 6 3 delta_files

rename comes from:
        svn_io_file_rename
  69% close_adm_file
                svn_wc__close_adm_file (=128 sec)
          69% svn_wc__entries_write (=89 sec)
                    64% svn_wc__entry_modify (=73 sec)
                              66 change_dir_prop (=48 sec)
                                      delta_proplists
                                      delta_dirs
                                      add_file_or_dir
                              34 maybe_bump_dir_info
                                    
                                    recursively_tweak_entries
                                    (recurse)
                                    svn_wc__do_update_cleanup
                                    close_edit
                                    svn_repos_dir_delta
                                    svn_repos_finish_report
                    22% recursively_tweak_entries
                                    (recurse)
                                    svn_wc__do_update_cleanup
                                    ...
                    15% svn_wc__run_log
                                    svn_wc_install_file
                                    close_file
                                    add_file_or_dir
                                    (recurse)
                                    svn_repos_dir_delta
          12% svn_wc__entries_init
                          init_adm
                          svn_wc__ensure_adm
                          prep_directory
                          add_directory
                          add_file_or_dir
                          delta_dirs
                          (recurse?)
                          svn_repos_finish_report
                          reporter_finish_report
           9% init_adm_file
                           init_adm
                          svn_wc__ensure_adm
                          prep_directory
                          add_directory
                          add_file_or_dir
                          delta_dirs
                          (recurse?)
                        svn_repos_dir_delta
                        svn_repos_finish_report
           9% svn_wc_install_file
                                   
  23% file_xfer_under_path
                  log_do_file_xfer
                  startHandler
                  doContent
                  contentProcessor
                  XML_ParseBuffer
                  XML_Parse
                  svn_xml_parse
                  svn_wc__run_log
                  svn_wc_install_file
                  close_file
                  add_file_or_dir
                  delta_dirs
                  (recurse?)
                svn_repos_dir_delta
                svn_repos_finish_report
   8% svn_io_copy_file
                   svn_subst_copy_and_translate
                   file_xfer_under_path
                   log_do_file_xfer
                   start_handler
                   doContent
                  contentProcessor
                  XML_ParseBuffer
                  XML_Parse
                  svn_xml_parse
                  svn_wc__run_log
                  svn_wc_install_file
                  close_file
                  add_file_or_dir
                  delta_dirs
                  (recurse?)
                svn_repos_dir_delta
                svn_repos_finish_report
        svn_wc__close_adm_file
        svn_wc__entries_write
        recurslivly_tweak_entries

mkdir comes from:
        svn_io_dir_make
  87 svn_sc__make_adm_thing
            53 init_adm
                            svn_wc__ensure_adm
                            prep_directory
                            add_directory
                            add_file_or_dir
                            delta_dirs
                            (recurse)
                            svn_repos_dir_delta
            47 init_adm_tmp_area
                            init_adm
                            ...
   7 svn_wc__ensure_directory
   6 make_empty_adm

open comes from:
  90 svn_io_file_open
            80 open_adm_file (=20 sec)
                    (recurse 93%)
                    svn_wc__open_text_base
            11 svn_wc__save_prop_file
            7 svn_io_write_version_file
   7 svn_io_open_unique_file
   3 apr_file_transfer_contents

chmod comes from:
        apr_file_perms_set
        apr_file_attrs_set
  84% apr_io_set_file_read_only
                close_adm_file
                svn_wc__close_adm_file
                  70% svn_wc__entries_write (=90sec)
                  12 svn_wc__entries_init
                  9 init_adm_file
                  9 svn_wc_install_file
                svn_wc__entries_write
                recurslivly_tweak_entries
  16% apr_io_set_file_read_write

write comes from:
  83 apr_file_write_full
            51 svn_wc__entries_write (=9sec)
            19 svn_wc_install_file
            10 svn_io_write_version_file
             9 init_adm_file
             5 svn_wc__wntries_init
             5 write_handler_apr
  17 apr_unix_file_cleanup
                  apr_pool_cleanup_run
                  apr_file_close
                  svn_wc__save_prop_file

----------------------------------------------------
-s

__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Fri Feb 7 18:39:33 2003

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.