Re: Log caching: Crash in `Get merge logs' without access to the repository root
Evgeny Kotkov <[email protected]>
| Newsgroups | gmane.comp.version-control.subversion.tortoisesvn.devel |
|---|---|
| Message-ID | <CAP_GPNg4A2N5R=MUG_VX3-wFhmNB0o1H3VfANJa73KTxaxC_5A@mail.gmail.com> |
Stefan Küng <[email protected]> writes: > No crash for me with a nightly build. > And I also don't get a crash with 1.9.3 x64. > Testing against a VisualSVN server 3.5, both with an existing repo and a > completely new one with only revision 1 where trunk/branches/tags was > created. > > I denied access to root (verified using the repo browser) but allowed rw > access to trunk/branches/tags. Showed the log for trunk, clicked > "include merged revisions", and I also tried with the command line. > > no crash in all tests. > > disabled log cache in the settings, retried all the tests. Again: no crash. I re-tested that in a clean environment with TortoiseSVN 1.9.3.27038-x64 and was able to reproduce the crash. The same applies as well to the nightly build 1.9.99.27234-dev-x64. One thing worth mentioning is that in a clean environment, using the `Get merge logs' context command or clicking on the `Include merged revisions' checkbox shows a `Want to go offline?' dialog. In order to trigger the crash, one should click on either `Offline for now' or the `Permanently offline' button. (If the choice is remembered, the crash will happen immediately). In order to reproduce this issue with an existing repository, it might be required to clean the log cache for that repository in TSVN Settings | Log Caching | Cached Repositories. Would it be possible for you to try that again? Since you're testing with VisualSVN Server, I also scripted the reproduction in VisualSVN Server PowerShell (the script creates a new repository, sets up the access rules and crashes TortoiseProc.exe): $repos = New-SvnRepository tsvn-merge-log-crash $repos | New-SvnRepositoryItem -Path /trunk -Type Folder $repos | Add-SvnAccessRule -AccountId BU -Path / -Access NoAccess $repos | Add-SvnAccessRule -AccountId BU -Path /trunk -Access ReadWrite $exe = 'C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe' & $exe @('/command:log', '/merge', "/path:$($repos.URL)trunk") > Well, that's not really an issue with TSVN but with the svn library. > You would get the same if you run > svn log https://server/svn/trunk -v -g I see that svn log -v -g is much faster than displaying the log in TSVN, e.g., for https://demo-server.visualsvn.com/tortoisesvn/branches/1.9.x the svn log -v -g completes in around 21 seconds, while showing the same log with TSVN requires 5 minutes (14x slower). This difference comes from the fact that svn does 8 requests, whereas TSVN does 1151 different requests to complete the operation: svn log -gv https://demo-server.visualsvn.com/tortoisesvn/branches/1.9.x > nul (Requires 8 requests, completes in ~21 second). CONNECT OPTIONS /tortoisesvn/branches/1.9.x OPTIONS /tortoisesvn/branches/1.9.x OPTIONS /tortoisesvn/branches/1.9.x CONNECT OPTIONS /tortoisesvn/branches/1.9.x OPTIONS /tortoisesvn/branches/1.9.x REPORT /tortoisesvn/!svn/rvr/27235/branches/1.9.x TortoiseSVN Log - Show All, Include merged revisions (Requires 1151 requests, completes in ~300 seconds, 14x slower). CONNECT OPTIONS /tortoisesvn/branches/1.9.x OPTIONS /tortoisesvn/branches/1.9.x OPTIONS /tortoisesvn/branches/1.9.x CONNECT OPTIONS /tortoisesvn/branches/1.9.x OPTIONS /tortoisesvn/branches/1.9.x REPORT /tortoisesvn/!svn/rvr/27235/branches/1.9.x CONNECT OPTIONS /tortoisesvn OPTIONS /tortoisesvn REPORT /tortoisesvn/!svn/rvr/27230 CONNECT OPTIONS /tortoisesvn OPTIONS /tortoisesvn REPORT /tortoisesvn/!svn/rvr/27130 CONNECT OPTIONS /tortoisesvn OPTIONS /tortoisesvn REPORT /tortoisesvn/!svn/rvr/27030 CONNECT OPTIONS /tortoisesvn OPTIONS /tortoisesvn REPORT /tortoisesvn/!svn/rvr/26930 ... (remaining 1127 requests) Regards, Evgeny Kotkov ------------------------------------------------------ http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=757&dsMessageId=3165296 To unsubscribe from this discussion, e-mail: [[email protected]].
merge-log-crash-1.png
(image/png, 30 KB) - not displayed
merge-log-crash-2.png
(image/png, 24.4 KB) - not displayed
merge-log-crash-3.png
(image/png, 66 KB) - not displayed
merge-log-crash-nightly.png
(image/png, 18.6 KB) - not displayed