Hi Ben,
On 12/4/13 12:52 PM, Pat Haley wrote:
---------------------
(trying local access)
---------------------
mseas(PaperWork)% svn update
svn: Unable to open an ra_local session to URL
svn: Unable to open repository
'file:///home/phaley/Papers/2011/ArpitVel/SvnPaper'
svn: disk I/O error
svn: disk I/O error
-----------------------
(trying network access)
-----------------------
chris@optiplex:~/Desktop$ svn update 3DDG
Updating '3DDG':
svn: E200030: Unable to connect to a repository at URL
'svn+ssh://mseas/software/Students/3DDG'
svn: E200030: disk I/O error
svn: E200030: disk I/O error
The second error contains an error code for an error from sqlite:
$ which-error.py 200030
00200030 SVN_ERR_SQLITE_ERROR
An update wouldn't be touching a sqlite database on the server since the only
sqlite database on the server side is the rep-cache.db which is only used at
commit time.
Additionally I believe the error message "disk I/O error" only occurs in the
sqlite code.
Are you sure that disk that your working copy is on is ok?
Reasonably so. All the other files are ok. Only svn is
giving us errors.
On 12/4/13 2:31 PM, Pat Haley wrote:
How about 'svnadmin verify /home/phaley/Papers/2011/ArpitVel/SvnPaper'?
No, that also fails
mseas(MeanAvg)% svnadmin verify /home/phaley/Papers/2011/ArpitVel/SvnPaper
svnadmin: disk I/O error
svnadmin: disk I/O error
This still looks like some sort of sqlite error. The rep-cache.db I mentioned
above does get checked as part of svnadmin verify.
Can you run the svnadmin verify under strace:
strace svnadmin verify /home/phaley/Papers/2011/ArpitVel/SvnPaper
You'll get a lot of output but look for the error string in the output and then
look for the preceeding failing system call. It'll probably be a file handle
so you'll need to dig further up looking for where it was opened.
If you want you could post the output someplace. If you want to avoid your
data being exposed use "-s 0" to avoid data being printed (but the error string
won't be included).
You can cause strace to write to a file with "-o myoutputfile"
So if you want to post I'd do:
strace -o myoutputfile -s 0 svnadmin verify
/home/phaley/Papers/2011/ArpitVel/SvnPaper
That line is complaining about a stale file handle:
fcntl(3, F_SETLK, {type=F_RDLCK, whence=SEEK_SET, start=1073741824,
len=1}) = -1 ESTALE (Stale NFS file handle)
write(2, "svnadmin: disk I/O error\n", 25) = 25
write(2, "svnadmin: disk I/O error\n", 25) = 25
exit_group(1) = ?
From a couple of lines above it looks like the file it's
complaining about is
/home/phaley/Papers/2011/ArpitVel/SvnPaper/db/rep-cache.db
however, I can use the "file" command successfully on that file
% file /home/phaley/Papers/2011/ArpitVel/SvnPaper/db/rep-cache.db
/home/phaley/Papers/2011/ArpitVel/SvnPaper/db/rep-cache.db: SQLite 3.x
database, user version 1
I haven't figured out anything more from the full version of that
strace. The post-safe version you suggested is at
http://mseas.mit.edu/download/phaley/Svn/svnverify_post.txt
I also did similar straces on an "svn update" from that
same repository. That is also showing the same
stale file handle error
fcntl(3, F_SETLK, {type=F_RDLCK, whence=SEEK_SET, start=1073741824,
len=1}) = -1 ESTALE (Stale NFS file handle)
write(2, "svn: Unable to open an ra_local "..., 47) = 47
write(2, "svn: Unable to open repository '"..., 89) = 89
write(2, "svn: disk I/O error\n", 20) = 20
write(2, "svn: disk I/O error\n", 20) = 20
lstat(".svn/log", 0x7fff48dcbec0) = -1 ENOENT (No such file or
directory)
unlink("Figures/.svn/lock") = 0
unlink(".svn/lock") = 0
exit_group(1) = ?
The post-safe version of that strace is at
http://mseas.mit.edu/download/phaley/Svn/svnupdate_error_post.txt
Any thoughts on what I should look at next?
Thanks.
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Pat Haley Email: pha...@mit.edu
Center for Ocean Engineering Phone: (617) 253-6824
Dept. of Mechanical Engineering Fax: (617) 253-8125
MIT, Room 5-213 http://web.mit.edu/phaley/www/
77 Massachusetts Avenue
Cambridge, MA 02139-4301