-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
High
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Environment:
We have been testing out LFS and found that using the 32 bit version of Git/LFS fails when using the normal Git commands to clone or checkout a very large object (about 1.6 GB). This works fine if we use the lfs versions of these commands. Since the embedded version of Git that comes with SourceTree is 32 bit, a checkout operation always fails for this file. Here's the error message:
git -c diff.mnemonicprefix=false -c core.quotepath=false checkout master
fatal: Out of memory, realloc failed
Error downloading object: xsec/gauge_repeat.cdb (92a538e6307508275374f99b5c0a404cecde66287ab95e264eb203d65d58860a)Errors logged to C:\repos\images\.git\lfs\objects\logs\20161214T184317.4387021.log
Use `git lfs logs last` to view the log.Completed with errors, see above.
I have found that using the 32 bit Git client the following commands will always fail for this repo on the same file.
git clone, git checkout, git resetHowever running git lfs clone, git lfs checkout works fine. The issue is with the way that the non-lfs files stream the large file through the smudge filter and using the lfs versions just open and write the file without having to stream the full contents.
Since I'm running on a 64 bit OS (Windows 10), I would have thought that the 64 bit Git client would have been installed.
I think there are two issues here.
1. The 32 bit version of the Git client is used for the embedded Git.
2. A checkout operation in SourceTree uses 'git checkout' instead of 'git lfs checkout'.We have been testing out LFS and found that using the 32 bit version of Git/LFS fails when using the normal Git commands to clone or checkout a very large object (about 1.6 GB). This works fine if we use the lfs versions of these commands. Since the embedded version of Git that comes with SourceTree is 32 bit, a checkout operation always fails for this file. Here's the error message: git -c diff.mnemonicprefix=false -c core.quotepath=false checkout master fatal: Out of memory, realloc failed Error downloading object: xsec/gauge_repeat.cdb (92a538e6307508275374f99b5c0a404cecde66287ab95e264eb203d65d58860a) Errors logged to C:\repos\images\.git\lfs\objects\logs\20161214T184317.4387021.log Use `git lfs logs last` to view the log. Completed with errors, see above. I have found that using the 32 bit Git client the following commands will always fail for this repo on the same file. git clone, git checkout, git reset However running git lfs clone, git lfs checkout works fine. The issue is with the way that the non-lfs files stream the large file through the smudge filter and using the lfs versions just open and write the file without having to stream the full contents. Since I'm running on a 64 bit OS (Windows 10), I would have thought that the 64 bit Git client would have been installed. I think there are two issues here. 1. The 32 bit version of the Git client is used for the embedded Git. 2. A checkout operation in SourceTree uses 'git checkout' instead of 'git lfs checkout'.
-
Severity 3 - Minor