GoogleCodeArchives / svnplot

Automatically exported from code.google.com/p/svnplot
0 stars 0 forks source link

Unknown node kind - svnlog2sqlite crash #44

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
I've run svnlog2sqlite successfully on other parts of our repository. Trying to 
run it on the whole of our repository, however, resulted in a crash, in this 
case at revision 404 (displays: Error unknown node kind). svnlog2sqlite 
eventually restarts the process and skips(?) the offending revision.

Looking at the svn logs, revision 404 contained some modifications, additions 
and deletions (with copy). Revisions before revision 404 also includes the same 
type of actions.

I am running SVNplot 0.6.1 and python 2.6 under Windows XP.

Original issue reported on code.google.com by pezz...@googlemail.com on 21 Sep 2010 at 9:31

GoogleCodeExporter commented 9 years ago
In rare cases, if you are using 'http' connection for repository, then because 
of connection problems, you may get this error. In the second attempt, 
connection is correctly established and things proceed.

If you face this problem again, please enable logging using (-g or --log) 
command line parameter. It will generate svnlog2sqlite.log file in the current 
directory. 

Hopefully it will have more information on which 'nodekind' is failing. 

Original comment by nitinbh...@gmail.com on 21 Sep 2010 at 12:44

GoogleCodeExporter commented 9 years ago
Hi, 
I am also facing same error.

I am using svnplot 0.6.1 & python 2.5 on Windows XP.
While creating DB for repository, it gives error as 'ClientError: Unknown node 
kind for...' for deleted file revision.

I tried to create a log file, it shows revision no and URL of the file. In 
repository Log message the revision shows delete operation on that file.

It is working fine with svnplot 0.5.12

Please correct me in case I am doing anything wrong.

Original comment by sachinen...@gmail.com on 15 Nov 2010 at 1:01

GoogleCodeExporter commented 9 years ago
can you attach a log file or stack trace of error ? Else is there a publicly 
accessible repository where i can reproduce this error ?

Original comment by nitinbh...@gmail.com on 15 Nov 2010 at 1:15

GoogleCodeExporter commented 9 years ago
Attached file contains Error Trace. I have edited actual file name.(file 
extension is same)

The file, in this error trace is deleted from repository. The log file shows 
the revision (at which the file is deleted).

The log file contains some information about repository contents, so I have 
attached stack trace of error.

Original comment by sachinen...@gmail.com on 16 Nov 2010 at 6:32

Attachments:

GoogleCodeExporter commented 9 years ago
[deleted comment]
GoogleCodeExporter commented 9 years ago
Check check out the latest version from trunk and try. I have added some 
additional logging to 'binary file' detection (which is throwing unknown node 
kind error).

Original comment by nitinbh...@gmail.com on 17 Nov 2010 at 2:43

GoogleCodeExporter commented 9 years ago
I'm having the same problem. Here's the log I get with the latest version from 
SVN:

2010-11-18 15:53:07,008 DEBUG Binary file check for file 
</trunk/software/phone_media/components/rtp.c> revision:2061
2010-11-18 15:53:07,009 ERROR Found Error Unknown node kind for 
'file:///home/svn/...snip....c'
Traceback (most recent call last):
  File "svnlog2sqlite.py", line 56, in convert
    self.ConvertRevs(startrevno, endrevno, bUpdLineCount, maxtrycount)
  File "svnlog2sqlite.py", line 125, in ConvertRevs
    for change in revlog.getDiffLineCount(bUpdLineCount):
  File "/root/svnplot/svn/svnplot-read-only/src/svnplot/svnlogiter.py", line 743, in getDiffLineCount
    change.updateDiffLineCountFromDict(diffCountDict)
  File "/root/svnplot/svn/svnplot-read-only/src/svnplot/svnlogiter.py", line 634, in updateDiffLineCountFromDict
    if( diffCountDict!= None and not self.isBinaryFile() and diffCountDict.has_key(filename)):
  File "/root/svnplot/svn/svnplot-read-only/src/svnplot/svnlogiter.py", line 625, in isBinaryFile
    binary = self.logclient.isBinaryFile(self.filepath(), revno)
  File "/root/svnplot/svn/svnplot-read-only/src/svnplot/svnlogiter.py", line 389, in isBinaryFile
    binary = self.__isBinaryFile(filepath, revno)
  File "/root/svnplot/svn/svnplot-read-only/src/svnplot/svnlogiter.py", line 372, in __isBinaryFile
    proplist = self.svnclient.proplist(url, revision=rev)
ClientError: Unknown node kind for 'file:///home/svn/...snip....c'

I think the file has been moved/deleted since, though I'm unsure if that is 
causing this problem at all...

Original comment by sam.jan...@gmail.com on 18 Nov 2010 at 6:28

GoogleCodeExporter commented 9 years ago
This definitely seems to be an issue with deleted/moved files.

Original comment by nitinbh...@gmail.com on 19 Nov 2010 at 6:14

GoogleCodeExporter commented 9 years ago
I tried to reproduce it with a public repository on google code that has few 
deleted files in repository. However, I could not reproduce this error. Looks I 
am missing something. Any hints ?

Original comment by nitinbh...@gmail.com on 19 Nov 2010 at 8:34

GoogleCodeExporter commented 9 years ago
I believe it was files that were moved with "svn move". Unfortunately my test 
case was a private repository. I'll see if I can have a go at attempting 
reproducing on a test repository at some point.

Original comment by sam.jan...@gmail.com on 21 Nov 2010 at 7:02

GoogleCodeExporter commented 9 years ago
In SVN log, the file shows 'added' 'deleted' and 'replacing' operation at 
revision for which it is giving error.

Original comment by sachinen...@gmail.com on 22 Nov 2010 at 8:29

GoogleCodeExporter commented 9 years ago
thanks to sachinenator finally discovered cause and way to reproduce it. I will 
fix it next two days

Original comment by nitinbh...@gmail.com on 23 Nov 2010 at 7:43

GoogleCodeExporter commented 9 years ago
This issue was closed by revision r426.

Original comment by nitinbh...@gmail.com on 24 Nov 2010 at 3:47

GoogleCodeExporter commented 9 years ago
I fear that this issue has not yet been resolved completely:

Altough I get much less of these messages using today's snapshot r451, I still 
noticed of these messages in my log.

The messages do not seem to be fatal any more, however.

2010-11-30 12:14:58,191 DEBUG Binary file check for file </XXX/XXX22> 
revision:5492
2010-11-30 12:14:58,269 ERROR Found Error Unknown node kind for 
'file:///XXX/svnrepos_svn16/XXX22'
Traceback (most recent call last):
  File "C:\XXX\Python 2.6.5\Lib\site-packages\svnplot\svnlog2sqlite.py", line 56, in convert
    self.ConvertRevs(startrevno, endrevno, bUpdLineCount, maxtrycount)
  File "C:\XXX\Python 2.6.5\Lib\site-packages\svnplot\svnlog2sqlite.py", line 125, in ConvertRevs
    for change in revlog.getDiffLineCount(bUpdLineCount):
  File "C:\XXX\Python 2.6.5\Lib\site-packages\svnplot\svnlogiter.py", line 806, in getDiffLineCount
    change.updateDiffLineCountFromDict(diffCountDict)
  File "C:\XXX\Python 2.6.5\Lib\site-packages\svnplot\svnlogiter.py", line 656, in updateDiffLineCountFromDict
    if( diffCountDict!= None and not self.isBinaryFile() and diffCountDict.has_key(filename)):
  File "C:\XXX\Python 2.6.5\Lib\site-packages\svnplot\svnlogiter.py", line 646, in isBinaryFile
    binary = self.logclient.isBinaryFile(filepath, revno)
  File "C:\XXX\Python 2.6.5\Lib\site-packages\svnplot\svnlogiter.py", line 391, in isBinaryFile
    binary = self.__isBinaryFile(filepath, revno)
  File "C:\XXX\Python 2.6.5\Lib\site-packages\svnplot\svnlogiter.py", line 372, in __isBinaryFile
    proplist = self.svnclient.proplist(url, revision=rev)
ClientError: Unknown node kind for 'file:///XXX/svnrepos_svn16/XXX22'

Original comment by G.Ohr...@web.de on 30 Nov 2010 at 12:08