Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Upgrade to 2.0.1 from 1.3 - Very slow push (>20 seconds)

Thomas Solbjør January 16, 2013

I had another issue with Stash after upgrading (SSP-548) and I was hoping that by fixing that I also got rid of this issue - but I still have the problem.

Excerpt from the logs (profiler):

{code}

141ms - GET /scm/TEST/foo.git/info/refs HTTP/1.1

141ms - StashUser com.atlassian.stash.user.UserService.authenticate(String,String,CaptchaResponse)

0ms - Object com.atlassian.stash.user.SecurityService.doWithPermission(String,Permission,Operation)

0ms - Repository com.atlassian.stash.repository.RepositoryService.findBySlug(String,String)

0ms - InternalRepository com.atlassian.stash.internal.repository.RepositoryDao.findBySlugAndProjectKey(String,String)

0ms - boolean com.atlassian.stash.user.PermissionService.hasRepositoryPermission(StashUser,Repository,Permission)

...

2013-01-17 09:48:31,971 http-apr-7990-exec-6 thomas

172ms - GET /scm/TEST/foo.git/info/refs HTTP/1.1

141ms - 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)

0ms - boolean com.atlassian.stash.internal.user.GrantedPermissionDao.isGrantedToUser(UserPermissionSearchCriteria)

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)

0ms - boolean com.atlassian.stash.internal.user.GrantedPermissionDao.isGrantedToUser(UserPermissionSearchCriteria)

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)

0ms - boolean com.atlassian.stash.internal.user.GrantedPermissionDao.isGrantedToUser(UserPermissionSearchCriteria)

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)

0ms - boolean com.atlassian.stash.internal.user.GrantedPermissionDao.isGrantedToUser(UserPermissionSearchCriteria)

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)

0ms - boolean com.atlassian.stash.internal.user.GrantedPermissionDao.isGrantedToUser(UserPermissionSearchCriteria)

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)

0ms - boolean com.atlassian.stash.internal.user.GrantedPermissionDao.isGrantedToUser(UserPermissionSearchCriteria)

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)

0ms - boolean com.atlassian.stash.internal.user.GrantedPermissionDao.isGrantedToUser(UserPermissionSearchCriteria)

0ms - boolean com.atlassian.stash.user.PermissionService.hasRepositoryPermission(StashUser,Repository,Permission)

0ms - boolean com.atlassian.stash.internal.user.GrantedPermissionDao.isGrantedToUser(UserPermissionSearchCriteria)

0ms - Integer com.atlassian.stash.internal.user.StashUserDao.findIdByName(String)

0ms - boolean com.atlassian.stash.user.PermissionService.hasGlobalPermission(StashUser,Permission)

0ms - Page com.atlassian.stash.user.UserService.findGroupsByUser(String,PageRequest)

0ms - Map com.atlassian.stash.internal.user.GrantedPermissionDao.mapPermissionsByProject(Integer,Set)

0ms - Object com.atlassian.stash.user.SecurityService.doWithPermission(String,Permission,Operation)

0ms - Repository com.atlassian.stash.repository.RepositoryService.findBySlug(String,String)

0ms - InternalRepository com.atlassian.stash.internal.repository.RepositoryDao.findBySlugAndProjectKey(String,String)

0ms - boolean com.atlassian.stash.user.PermissionService.hasRepositoryPermission(StashUser,Repository,Permission)

0ms - boolean com.atlassian.stash.scm.ScmRequestCheckService.checkActionAllowed(ScmRequest)

0ms - boolean com.atlassian.stash.license.LicenseService.canLogin(Principal)

0ms - boolean com.atlassian.stash.user.PermissionService.hasGlobalPermission(StashUser,Permission)

0ms - boolean com.atlassian.stash.user.PermissionService.hasRepositoryPermission(Repository,Permission)

0ms - Ticket com.atlassian.stash.throttle.ThrottleService.acquireTicket(String)

31ms - C: Program Files (x86) Git bin git.exe http-backend

...

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)

0ms - boolean com.atlassian.stash.internal.user.GrantedPermissionDao.isGrantedToUser(UserPermissionSearchCriteria)

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)

0ms - boolean com.atlassian.stash.internal.user.GrantedPermissionDao.isGrantedToUser(UserPermissionSearchCriteria)

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)

0ms - boolean com.atlassian.stash.internal.user.GrantedPermissionDao.isGrantedToUser(UserPermissionSearchCriteria)

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)

0ms - boolean com.atlassian.stash.internal.user.GrantedPermissionDao.isGrantedToUser(UserPermissionSearchCriteria)

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)

0ms - boolean com.atlassian.stash.internal.user.GrantedPermissionDao.isGrantedToUser(UserPermissionSearchCriteria)

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)

0ms - boolean com.atlassian.stash.internal.user.GrantedPermissionDao.isGrantedToUser(UserPermissionSearchCriteria)

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)

0ms - boolean com.atlassian.stash.internal.user.GrantedPermissionDao.isGrantedToUser(UserPermissionSearchCriteria)

0ms - boolean com.atlassian.stash.user.PermissionService.hasRepositoryPermission(StashUser,Repository,Permission)

0ms - boolean com.atlassian.stash.internal.user.GrantedPermissionDao.isGrantedToUser(UserPermissionSearchCriteria)

15ms - Integer com.atlassian.stash.internal.user.StashUserDao.findIdByName(String)

0ms - boolean com.atlassian.stash.user.PermissionService.hasGlobalPermission(StashUser,Permission)

0ms - Page com.atlassian.stash.user.UserService.findGroupsByUser(String,PageRequest)

0ms - Map com.atlassian.stash.internal.user.GrantedPermissionDao.mapPermissionsByProject(Integer,Set)

0ms - Object com.atlassian.stash.user.SecurityService.doWithPermission(String,Permission,Operation)

0ms - Repository com.atlassian.stash.repository.RepositoryService.findBySlug(String,String)

0ms - InternalRepository com.atlassian.stash.internal.repository.RepositoryDao.findBySlugAndProjectKey(String,String)

0ms - boolean com.atlassian.stash.user.PermissionService.hasRepositoryPermission(StashUser,Repository,Permission)

0ms - boolean com.atlassian.stash.scm.ScmRequestCheckService.checkActionAllowed(ScmRequest)

0ms - boolean com.atlassian.stash.license.LicenseService.canLogin(Principal)

0ms - boolean com.atlassian.stash.user.PermissionService.hasGlobalPermission(StashUser,Permission)

0ms - boolean com.atlassian.stash.user.PermissionService.hasRepositoryPermission(Repository,Permission)

0ms - Ticket com.atlassian.stash.throttle.ThrottleService.acquireTicket(String)

33188ms - C: Program Files (x86) Git bin git.exe http-backend

{code}

2 answers

1 accepted

2 votes
Answer accepted
Thomas Solbjør January 16, 2013

After installing Stash as a Windows Service (https://confluence.atlassian.com/display/STASH/Running+Stash+as+a+Windows+service) the "Atlassian Stash" service runs as "Local System". This is turn executes git.exe as Administrator which makes "push" slow.

By changing the user who runs the "Atlassian Stash" service to a local Windows user (without Administrator rights) pushing is fast again.

0 votes
Daniel R
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
April 22, 2013

Hello Thomas,

We've written this KB article:

Git Push Operations Extremely Slow on Windows

Thanks

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events