[Zope] Re: POSKeyError on the Python Recompile URL

Tres Seaver tseaver at zope.com
Fri Mar 11 10:29:04 EST 2005


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Allen Schmidt wrote:
| Duh. Sorry. Basic rules of problem reporting:
| RH7.2
| Zope 2.7.2
| ZEO
| Squid in front
|
|> ~  What version of Zope?  You may need to run 'fstest.py' and / or
|> ~  'fsrefs.py' on your Data.fs, and see if they complain.
|
|
| I am assuming these are just reading tools and non-destructive? Can they
| be run against a running zeo/zope?

They are non-destructive.  If they report issues, then (channeling Tim
again) you may need to run 'fsrecover.py' on a copy of the Data.fs and
see if it helps.

Another thing would be to try bringing up a copy of the data under Zope
2.7.5c1, and running the PythonScript compiler URL there:  there have
been a number of ZODB fixes since Zope 2.7.2 / ZODB3 3.2.3 which might
help out.

|> ~  You need to include the whole traceback to enable us to help you.
|
|
| No traceback that I can see. Just lines that show up in the eventlog.

Your event log listing didn't include any POSKeyError.  Do you have the
'error_log' object set to write tracebacks to the log?  If not, you
should be able to extract the traceback from the 'error_log' entry.

|> | Here is the line from the event.log plus one before it that also
|> | concerns me:>
|> |
|> | 2005-03-11T07:30:14 PROBLEM(100) ZODB Could not import class
|> | 'Connection' from module 'Products.ZODBCDA.DA'
|>
|> This message is likely because you have an instance of the ZODBCDA
|> Connection class in your database (maybe int the root of your Zope
|> site?), but have removed the ZODBCDA product.  If you aren't using
|> ZODBCDA any longer, you should be able just to delete the connection
|> object in the ZMI.
|
| For this one, we ran across this a long time ago if I remember
| correctly, and we could never find any reference to the ODBC DA. We HAD
| one installed several years ago but removed it when we switched to Linux
| and MySQL.

Hmm... I would try opening the database in read-only mode and looking at
the '__dict__' of the root object.  E.g.:

~  $ bin/zopectl debug  # even while server is running, if using ZEO!
~  ...
~  >>> for k, v in app.__dict__.items():
~  ...     print "%s :: %s" ( k, v )

and then look for the connection object there.

Tres.
- --
===============================================================
Tres Seaver                                tseaver at zope.com
Zope Corporation      "Zope Dealers"       http://www.zope.com
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFCMbk/GqWXf00rNCgRApWYAJ4/0BK5Q69vfcNJXfAdpMcWTVdjcACfeVNt
9mn7IG8eLFhiB//A8X8hxEY=
=6Pkw
-----END PGP SIGNATURE-----



More information about the Zope mailing list