Here's what some of the manual calls look like. What I've written
(SvnRepos) is a wrapper class around the Ruby bindings. It should be
pretty easy to see which functions each one maps to.
Thanks!
Tim
>> repos = SvnRepos.open("./svn/development")
repos = SvnRepos.open("./svn/development")
CALLING Subversion method: diff_fns_invoke_token_compare
CALLING Subversion method: diff_fns_invoke_token_compare
CALLING Subversion method: history_prev
CALLING Subversion method: swig_init_asp_dot_net_hack
CALLING Subversion method: unlock
CALLING Subversion method: trace_node_locations
=> #<SvnRepos:0xb6a3a974 @repos=#<SWIG::TYPE_p_svn_repos_t:0xb6a3a7f8>,
@repos_path="./svn/development">
>> repos.commit("/asdf" => "asdfsa")
repos.commit("/asdf" => "asdfsa")
CALLING Subversion method: trace_node_locations
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
CALLING Subversion method: trace_node_locations
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
CALLING Subversion method: diff_fns_invoke_token_compare
CALLING Subversion method: diff_fns_invoke_token_compare
CALLING Subversion method: trace_node_locations
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
CALLING Subversion method: trace_node_locations
=> 4
>> repos.ls("/")
repos.ls("/")
CALLING Subversion method: trace_node_locations
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
=> {"questions"=>:directory, "asdf"=>:file, "schema_info"=>:directory}
>> repos.file_contents("/asdf")
repos.file_contents("/asdf")
CALLING Subversion method: trace_node_locations
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
CALLING Subversion method: diff_fns_invoke_token_compare
CALLING Subversion method: diff_fns_invoke_token_compare
CALLING Subversion method: diff_fns_invoke_token_compare
=> "asdfsa"
>> repos.delete("/asdf")
repos.delete("/asdf")
CALLING Subversion method: trace_node_locations
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
CALLING Subversion method: trace_node_locations
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
CALLING Subversion method: trace_node_locations
=> 5
>> repos.ls("/")
repos.ls("/")
CALLING Subversion method: trace_node_locations
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
CALLING Subversion method: history_prev
=> {"questions"=>:directory, "schema_info"=>:directory}
>> r = SvnRepos.create("./repos")
r = SvnRepos.create("./repos")
CALLING Subversion method: trace_node_locations
CALLING Subversion method: trace_node_locations
=> #<SvnRepos:0xb6a2c504 @repos=#<SWIG::TYPE_p_svn_repos_t:0xb6a2c248>,
@repos_path="./repos">
>>
On Sun, 2007-07-22 at 13:15 -0700, Tim Coulter wrote:
> All,
>
> Can someone tell me why the svn_fs_create_berkeley() function gets
> called repeatedly for version 1.4.3? Is this supposed to happen?
>
> The Ruby bindings dispatch calls to SWIG (or the underlying compiled
> code). I've been having weird errors, so I decided to override the
> dispatcher and see what was getting called. When my program was seg
> faulting, and giving "Can't grab FSFS transaction list mutex," the
> dispatcher was sending repeated calls to svn_fs_create_berkeley(). I
> checked out the source, and it looks as if svn_fs_create_berkeley() is
> deprecated. I've included the output below.
>
> Is this normal? I've tried to repeat the svn_fs_create_berkeley() calls
> by manually calling my own program's functions; unfortunately, I wasn't
> able to find anything, and it seems like I'm out of luck.
>
> Any help you can provide would be greatly appreciated.
> Tim Coulter
> tim@timothyjcoulter.com
>
> CALLING Subversion method: get_commit_editor4
> CALLING Subversion method: get_commit_editor4
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: get_commit_editor4
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: stream_write
> CALLING Subversion method: stream_write
> CALLING Subversion method: get_commit_editor4
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: stream_write
> CALLING Subversion method: stream_write
> CALLING Subversion method: get_commit_editor4
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: stream_write
> CALLING Subversion method: stream_write
> CALLING Subversion method: get_commit_editor4
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: stream_write
> CALLING Subversion method: stream_write
> CALLING Subversion method: get_commit_editor4
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: stream_write
> CALLING Subversion method: stream_write
> CALLING Subversion method: get_commit_editor4
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: create_berkeley
> CALLING Subversion method: get_commit_editor4
> /usr/lib/ruby/1.8/svn/util.rb:60: [BUG] Segmentation fault
> ruby 1.8.5 (2006-08-25) [i486-linux]
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
> For additional commands, e-mail: dev-help@subversion.tigris.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sun Jul 22 22:18:35 2007