On Mon, Jul 12, 2021 at 10:32 PM Daniel Sahlberg <daniel.l.sahlb...@gmail.com> wrote: > Den mån 12 juli 2021 kl 17:02 skrev Nathan Hartman <hartman.nat...@gmail.com>: >> On Mon, Jul 12, 2021 at 6:44 AM Arbeiter Ansgar >> <ansgar.arbei...@boening.com> wrote: >>> >>> after update an repository, i normally check actual changes (with >>> TurtoiseMerge) so this tool and the update window are open. >>> when i then update again (by batch file) then i very often get this message: >>> >>> svn: E200030: sqlite[S10]: disk I/O error >>> >>> when i close TurtoiseMerge (and update window) before update again, then i >>> never noticed it. >>> (i also checked for actually disk problems, but there are none) >>> >>> batch file: >>> @echo off >>> svn --version > nul >>> if %ErrorLevel% gtr 0 ( >>> echo Sources can't be updated because the SVN-client not found. Please >>> install the console tools TortoiseSVN. >>> ) else ( >>> svn up ..\..\Axxx >>> svn up ..\..\Cxxx >>> svn up ..\..\Dxxx >>> svn up .. >>> ) >>> >>> used versions: >>> >>> TortoiseMerge 1.14.1, Build 29085 - 64 Bit , 2021/02/09 16:17:02 >>> libsvn_diff 1.14.1, >>> apr 1.6.5 >>> apr-util 1.6.1 >>> >>> >>> TortoiseSVN 1.14.1, Build 29085 - 64 Bit , 2021/02/09 16:17:02 >>> ipv6 enabled >>> Subversion 1.14.1, -release >>> apr 1.6.5 >>> apr-util 1.6.1 >>> serf 1.3.9 >>> OpenSSL 1.1.1i 8 Dec 2020 >>> zlib 1.2.11 >>> SQLite 3.29.0 >>> >>> Mit freundlichen Grüßen / With kind regards >>> i.A. Ansgar Arbeiter >>> Graduate Engineer - Development > > > I've tried to reproduce your problem but I can't. However you state that you > get the error "very often" so maybe I'm just not lucky enough to catch it. > > Hello, >> >> >> It sounds like one of the tools may be holding the working copy >> database open and/or locked in some way against access by other >> programs (e.g., a file system based locking, a SQLite EXCLUSIVE_LOCK, >> etc). >> >> The error message "disk I/O error" may be misleading in this case; >> i.e., it may not be an actual *disk* error, but rather inability to >> open or operate on the database file for other reasons. (This error is >> reported when the working copy's SQLite database reports SQLITE_IOERR. >> The [S10] means the same thing as SQLITE_IOERR; it doesn't give any >> more information. That is a generic code for a multitude of different >> conditions.) >> >> It's probably just best to close the Tortoise windows when you want to >> use the command line client; however maybe someone else on this list >> will know a better answer. You could also try asking at the >> TortoiseSVN mailing list (see [1] below) whether the Tortoise client >> is expected to prevent simultaneous access by other clients, and if >> so, whether there is a way to avoid that. > > > As far as I know, TortoiseSVN never touch the working copy by it self but > only through calling Subversion's API. (I even checked the sources but I > couldn't "findstr" ("grep" in Unix-speech) anything related to sqlite). > > I seem to remember a similar question last year (?) where TortoiseSVN kept > some resources open until the window was closed. I meant to look into it but > never found the time. I think it was related to a temp file being held open, > but I can't find the mail right now. > > The svn command line client is doing one thing at a time (per process) > whereas in TortoiseSVN you might start one thing (for example an update), > then with that process still "alive" start other things, either in the same > process or as separate processes. I think (hope) that there are some > Subversion APIs that TortoiseSVN could call to cleanup things when whatever > it does is finished instead of relying on cleaning up things > > If I find time, I'll try to look at it and submit patches to TortoiseSVN. As > Nathan already wrote, you can also ask in the TortoiseSVN mailing lists [1]. > > [1] https://groups.google.com/g/tortoisesvn > > Kind regards, > Daniel Sahlberg
Note that there is a config setting in the client-side "config" file that might have some impact here (setting "exclusive locking" for the SQLite database): http://subversion.apache.org/docs/release-notes/1.8.html#exclusivelocking Also, look for "exclusive-locking" in this svnbook section: https://svnbook.red-bean.com/nightly/en/svn.advanced.confarea.html#svn.advanced.confarea.opts.config Perhaps you could test if that setting has any impact on the problem you're seeing. -- Johan