Crash on scan (again)

Bug #182219 reported by Scott Severance
2
Affects Status Importance Assigned to Milestone
Falcon
Invalid
Undecided
Unassigned

Bug Description

Running a scan in 2.0.0~beta2 worked fine once I worked around bug 173178. However, when I run a scan in 2.0.3 or 2.0.4, I get the following crash:

Falcon repository manager 2.0.4 (C)2005-2008 Dennis Kaarsemaker <email address hidden>
* Scanning component 'main/editors'

 === ERROR! ===

An error occured in falcon. This is probably a bug in the software.
Please file a bug at https://launchpad.net/falcon/+filebug and
include the following backtrace:

Traceback (most recent call last):
  File "/usr/bin/falcon", line 235, in ?
    component.scan(clean = action=='clean')
  File "/usr/lib/python2.4/site-packages/falcon/plugin.py", line 157, in wrapped_func
    result = func(*args, **kwargs)
  File "/usr/lib/python2.4/site-packages/falcon/pocket.py", line 183, in scan
    for s in self.sources.all():
  File "/var/lib/python-support/python2.4/django/db/models/query.py", line 108, in __iter__
    return iter(self._get_data())
  File "/var/lib/python-support/python2.4/django/db/models/query.py", line 470, in _get_data
    self._result_cache = list(self.iterator())
  File "/var/lib/python-support/python2.4/django/db/models/query.py", line 195, in iterator
    obj = self.model(*row[:index_end])
  File "/usr/lib/python2.4/site-packages/falcon/package.py", line 34, in __init__
    self.sourcefiles = pickle.loads(self.sourcefiles)
TypeError: ('__init__() takes exactly 4 arguments (1 given)', <class 'falcon.package.file'>, ())

Revision history for this message
Dennis Kaarsemaker (dennis) wrote :

That's an interesting bug... The other two you just reported are simple typos which I'll fix shortly, this one requires a bit more investigation. Would you mind sending me your .falcon/data file for inspection?

Revision history for this message
Scott Severance (scott.severance) wrote :

Here's the data file.

Revision history for this message
Dennis Kaarsemaker (dennis) wrote :

Very strange, the sourcepackages seem to be stored the wrong way. I have no idea how this can happen and this definitely didn't change between falcon releases. It is possible that the bug you saw before could have caused this, so I suggest you reinitialize the repository by doing this:

$ falcon dbshell
sqlite> DROP TABLE falcon_sourcepackage;
sqlite> DROP TABLE falcon_binarypackage;
sqlite> .q
$

This will drop all package information but leave your configuration intact.

Then scan again. If it still happens, let me know.

Revision history for this message
Scott Severance (scott.severance) wrote :

Well, that fixed it. How the database got corrupt is a mystery, though. As far as I an remember, I haven't done anything since 2.0.0~beta2 except upgrading, and adding a package to a directory--which is why I was trying to scan.

If you don't think that this is a normally-reproducible issue, then as far as I'm concerned you can close the bug.

Revision history for this message
Scott Severance (scott.severance) wrote :

One other note: I've been running Falcon since 1.5.4 or thereabouts. I've had some other difficulties relating to the 2.0 switch. I don't know if this could be another one that didn't show itself until now.

Revision history for this message
Dennis Kaarsemaker (dennis) wrote :

This could be the result of one of those difficulties, it is not entirely unlikely that due to one of your previous bugs the data was stored wrong. That should not have happened, but unfortunately did. Thanks to you and other bugreporters falcon 2.0.4 (and .5) have seen many fixes already so you've saved others from all the problems you've seen :)

I'm closing this bug as invalid since it most likely is a result of another bug and not a new one. Many thanks for using Falcon and reporting bugs!

Changed in falcon:
status: New → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.