Git push operations extremely slow on Windows
Push operations in Windows environments take above 20 seconds (minutes) to be completed:
[33391ms] - "POST /scm/TEST/foo.git/git-receive-pack HTTP/1.1" [203ms] - StashUser com.atlassian.stash.user.UserService.authenticate(String,String,CaptchaResponse) [0ms] - InternalStashUser com.atlassian.stash.internal.user.StashUserDao.findByName(String) [0ms] - void com.atlassian.stash.internal.user.RepositoryAccessDao.trimToFirstPage(InternalStashUser,int,Predicate) [0ms] - boolean com.atlassian.stash.user.PermissionService.hasRepositoryPermission(StashUser,Repository,Permission) [0ms] - boolean com.atlassian.stash.internal.user.GrantedPermissionDao.isGrantedToUser(UserPermissionSearchCriteria) [0ms] - boolean com.atlassian.stash.user.PermissionService.hasRepositoryPermission(StashUser,Repository,Permission) ...
Running Stash as a user (either via Windows service or not) that is part of the Administrator group causes Windows to spend a lot of time running permission checks.
If you installed Stash as a service using the installer as described on Getting started, you shouldn't be seeing this issue when it is run as a service. A user
atlstash is created and responsible for running Stash. This user is not a member of the Administrator group. Please refer to Running the Stash installer for more details on the
Run Stash as a local, non-administrator user.
If Stash cannot be run as a non-administrator user, apply this hotfix http://support.microsoft.com/kb/2545833.