Gemini Community Support Site

This Gemini community support site can be used to find solutions to product issues. You can log in using Open Id, Google Profile and even Facebook. Feel free to ask a question or browse FAQs and documentation. Product tour videos are also available along with how-to videos demonstrating key Gemini capabilities.




SVN post-commit StackOverflowException

web-app

Hi,

tody I set up the latest GeminiSVNAdapter.
Unfortunately, the post commit hook didn't work. It terminates with the following exception message:

Process is terminated due to StackOverflowException.

I tried to run it via command line and got the same error message with no additional information.

Then I used DebugView to monitor the trace messages. After enabling "Capture global Win32" (it would be good to read this in the readme.txt), i didn't see any error messages. Just the normal traces:

E:\SVN\Project\hooks>post-commit.cmd E:\SVN\Project 11

[1992] CounterSoft Gemini: Constructed Service Manager.
[1992] CounterSoft Gemini: Gemini Username: admin
[1992] CounterSoft Gemini: Done SetAuthenticationTokenOnAllServices.
[1992] CounterSoft Gemini: Issue ID: 459
[1992] CounterSoft Gemini: Commit Comment: Test 2 of SVN Gemini Adapter
[1992] GEM:459
[1992] 
[1992] CounterSoft Gemini: Gemini User ID: 1
[1992] CounterSoft Gemini: SVN check-in Author: Walter
[1992] CounterSoft Gemini: SVN check-in Repository Path: E:\SVN\Project
[1992] CounterSoft Gemini: SVN check-in Revision Number: 11
[1992] CounterSoft Gemini: SVN check-in Committed Files: A   trunk/AccessGUI/svngeminitest2.txt

The SVN repository is hosted on a Windows Server 2003 64 bit. I can't debug on that server.

What is causing the StackOverflowException?

The user set up in the config has the permission to create source control links.

BTW: pre-commit and post-commit are really slow. It takes about 1:30 minutes to just commit an empty file. Why is it so slow?

--
Kind regards,
Mathias

tolot27
· 1
tolot27
Replies (7)
helpful
0
not helpful

Wait for 3.5 release this week and then test to see if your issues has been resolved.

As for slow check in times, not see that before -- something is up. 

Wait for 3.5 release...


Harvey Kandola
· 212
Harvey Kandola
helpful
0
not helpful

Hi,

today I upgraded to 3.5.1 but the error is still there as well as the long commit time.

The output of debug view is identical to my initial post and the output of the TortoiseSVN commit dialog is as following:

post-commit hook failed (exit code -2147023895) with output:
Process is terminated due to StackOverflowException.

What now?

--
Kind regards,
Mathias


tolot27
· 1
tolot27
helpful
0
not helpful

Does the file appear in Gemini? Debugview shows it should....

Also, can you detail the exact steps you have taken?


Saar Cohen
· 5000
Saar Cohen
helpful
0
not helpful

Hi,

[quote user="SaarCohen"]
Does the file appear in Gemini? Debugview shows it should....
[/quote]
Neither the file nor the commit comment appear in Gemini.

[quote user="SaarCohen"]
Also, can you detail the exact steps you have taken?
[/quote]
I followed exactly the steps written in the readme. I only enabled the pre-commit handler.

I also upgraded to the latest Subversion server (1.6.3) and upgraded my repository.

A StackOverflowException usually occurs if a function is called recursively. But I don't see any such function in the sources.

--
Kind regards,
Mathias


tolot27
· 1
tolot27
helpful
0
not helpful

Can you please try the post commit one instead?


Mark Wing
· 9108
Mark Wing
helpful
0
not helpful

Hi,

[quote user="MarkWing"]Can you please try the post commit one instead?[/quote]

Sorry, I wrote something wrong. I meant: the only change I made is, I enabled the pre-commit handler. Now both handlers are enabled.

But I found the problem. Because I own Visual Studio 2005, I had to change the auto-implemented properties in Utilities.cs to be compatible with C# 2.0. I mistakenly wrote the setter to assign it's value to itself and not to a private variable. That caused the recursion.
Now it works well. :)

Please can you fix the sources to be compatible with C#2.0. You only have to change the auto-implemented properties in Utilities.cs and line 84 in Program.cs to using 'string' instead of 'var'. The line should be written as:
foreach (string s in args)

--
Kind regars,
Mathias


tolot27
· 1
tolot27
helpful
0
not helpful

Will do. Thanks for letting us know.


Saar Cohen
· 5000
Saar Cohen