Bitbucket Server 7.4 introduced changes which replace the use of blocking I/O for interacting with git http-backend, git receive-pack and git upload-pack with non-blocking I/O. The new approach appears to have performance issues unique to Windows which makes clones slower than they were with the previous blocking I/O code. This does not apply to Linux, where speed is unaffected.
- Upgrade to Bitbucket Server 7.4.0 or newer
- Perform a clone over HTTP or SSH
Clone speeds are at least equal to speeds on 7.3 and prior.
Clone speeds are significantly slower. While exact numbers are hard to pin down, BIO-based hosting appears to be 10x faster than NIO.
Disable NIO-based hosting for HTTP and SSH. This is a short-term workaround as the ability to switch back to BIO-based hosting will be removed in a future version of Bitbucket Server. NIO hosting can be disabled by applying the following in bitbucket.properties and restarting Bitbucket Server.