[wplug] Planet blog aggregator. [slightly OT]
Jonathan S. Billings
billings at negate.org
Tue Apr 11 07:02:20 EDT 2006
Karlos Abel wrote:
> INFO:planet.runner:Loading cached data
> Traceback (most recent call last):
> File "planet.py", line 254, in ?
> main()
> File "planet.py", line 142, in main
> channel = planet.Channel(my_planet, feed_url)
> File "planet/__init__.py", line 256, in __init__
> cache_file = dbhash.open(cache_filename, "c", 0666)
> File "//usr/lib/python2.2/dbhash.py", line 16, in open
> return bsddb.hashopen(file, flag, mode)
> bsddb.error: (22, 'Invalid argument')
(I admit, I don't know about this software, and I'm not much of a python
programmer, but I do recognise the error)
What you've got here, is the DB library returning the error 'Invalid
argument'. This is the prettified name for EINVAL, which corresponds to
error #22 in errno.h on my linux system.
I looked in the dbopen man page, and the documentation says this about
this error:
[EINVAL]
A parameter has been specified (hash function, pad byte etc.)
that is incompatible with the current file specification or
which is not meaningful for the function (for example, use of
the cursor without prior initialization) or there is a mismatch
between the version number of file and the software.
Most likely, the cache file is a BerkeleyDB that isn't recognizable to
Python, because it's older than the version on your system. You've
probably got a version of BerkeleyDB that's newer than that of your web
host.
If it's just a cache, just move it out of the way or delete it. If it
is absolutely necessary, it's probably going to require you convert it
using one of the tools from sleepycat, or regenerate it from scratch.
--
Jonathan Billings <billings at negate.org>
More information about the wplug
mailing list