-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Description
When cloning a file larger than 4Gbyte from a BitBucket server repository (LFS enabled), the file is not reconstructed correctly E.g. a 6Gb file results in a 700Mb file. The lfs/objects folder contains the correct file however.
Steps to reproduce:
Server: Basic install of Debian with Bitbucket Server 4.6, Git 2.13 (64-bit)
Client 1: Ubuntu 16.02 64 bit, Git 2.13 and Git-LFS 2.2.1 (both 64-bit)
Client 2: Windows 64 bit (2012), Git 2.13 and Git-LFS 2.2.1 (both 64-bit)
- Create a repository on the server with LFS support enabled
- Clone the repository (git clone ssh://git@server:7999/tst/test-git.git)
- git track '*.iso' , commit and push to the remote
- add an iso file larger than 4Gb (I used Visual Studio 2013 Update 4 which is 5.82Gb), commit and push to the remote
- Clone the repository into a clean folder
Client 1 works correctly
Client 2 pulls down the file correctly into .git/lfs/objects/aa/6d/aa6d2a8e9acbb78895b3d2c6ae3cb0db737344aa82b2859d31f757deec931049 but does not reconstruct/copy it correctly to the destination folder (it results in a 1.82Gb file).
Atlassian have looked into the problem and believe that the BitBucket server is working correctly, due to the fact that the correct content is retrieved over the network into the temporary object file (the CRCs match the original file).
Note that no Git configuration has changed (smudge filters etc are the default).
If the file is removed and "git lfs pull" performed, the file is created correctly. Using "git lfs clone" also works.