-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
Highest
-
None
-
Affects Version/s: 3.4.21
-
Component/s: ChangeSetViewManager
-
None
-
Severity 1 - Critical
Previously there was a (fixed in 1.9.3) issue SRCTREEWIN-4953 that also was a crash on file search.
In 3.4.21 (possibly earlier) this issue exists again, however with a different error:
ERROR [2024-12-09 14:39:24,321] [80] [SourceTree.Repo.RepoHandlerGit] [Log] - ListSubmodules failed, falling back to git.exe LibGit2Sharp.LibGit2SharpException: invalid data in index - calculated checksum does not match expected at LibGit2Sharp.Core.Ensure.HandleError(Int32 result) in /_/LibGit2Sharp/Core/Ensure.cs:Line 154. at LibGit2Sharp.Core.Proxy.git_foreach[T1,T2,TResult](Func`3 resultSelector, Func`2 iterator, GitErrorCode[] ignoredErrorCodes) in /_/LibGit2Sharp/Core/Proxy.cs:Line 3734. at LibGit2Sharp.SubmoduleCollection.GetEnumerator() in /_/LibGit2Sharp/SubmoduleCollection.cs:Line 120. at System.Linq.Enumerable.Any[TSource](IEnumerable`1 source) at SourceTree.Repo.RepoHandlerGit.ListSubmodules(String path)
The process viewer shows tons of the same 3 git commands happening repeatedly again and again as soon as they finish
{
"Command": "git -c diff.mnemonicprefix=false -c core.quotepath=false --no-optional-locks ls-files --cached",
"Directory": "C:\\Dev\\bitbucket",
"Status": "Finished",
"Duration": "00:00:00.4290065",
"CallerContext": "GetFileStatus",
"Output": "redacted"
},
{
"Command": "git -c diff.mnemonicprefix=false -c core.quotepath=false --no-optional-locks status --porcelain --ignore-submodules=dirty --untracked-files=all --no-ahead-behind",
"Directory": "C:\\Dev\\bitbucket",
"Status": "Finished",
"Duration": "00:00:00.1950059",
"CallerContext": "GetFileStatus",
"Output": "redacted"
},
{
"Command": "git -c diff.mnemonicprefix=false -c core.quotepath=false --no-optional-locks ls-files -m",
"Directory": "C:\\Dev\\bitbucket",
"Status": "Finished",
"Duration": "00:00:02.2360595",
"CallerContext": "GetFileStatus",
"Output": "redacted"
},
This completely freezes SourceTree and the whole computer - the only way to fix is to remove everything from the file search, after waiting sometimes minutes for the freeze to stop.
Additionally, it seems that file search shows files that are outside of the filter's scope (e.g. dropdown "Show only" is set to "Pending files", it will temporarily show "All" files that match the search)
This means, that at the moment file search cannot be used at all, since it will always freeze SourceTree.