When subversionnotify.exe is called from post-commit.bat it slows down all the process in subversion. For example creating a new folder in subversion takes 20-25 se开发者_JAVA百科conds which otherwise is created in 1-2 seconds. But when I remove this post-commit.bat from hooks folder, everything works normally. Could someone guide me with this issue? Also its really important for me to have post-commit.bat as its necessary for e-mail notification.
Subversion waits until the post-commit finishes. In Unix you can circumvent this by adding a "&" to the call therefore spawning a new process. However I do not know how to do it in Batch files (is it even possible? I doubt..)
There is a solution from clearvision called "Subversion Hook accelerator" which does exactly the same thing on windows: spawning a process and immediately end the post-commit hook .
Please post if this helped, I never used it before, because I am using Unix..
Something I've run into before that caused long execution times:
If you're not using the SVN-to-ActiveDirectory user name matching feature, make sure the SubversionNotify config file MailServer node does not have the ADGlobalCatalog attribute. Even if the attribute is empty, SubversionNotify still attempts to make an AD connection. This can add half a minute or so to the execution time depending on the ability to establish connection to the AD, the size of the AD, and whether or not users exist and can be found in the AD.
If you are using the AD integration, you might want to consider just defining email addresses directly in the config file.
EDIT: ADGlobalCatalog="" might be fine.
You can also turn on detailed logging information by setting the LoggingLevel="DEBUG" attribute on the subversionNotifyConfig element. Run SubversionNotify for a revision and view the log. You might find some info to help you out in there.
精彩评论