2010/10/2 iem4voos <[email protected]>

> Salve a Tutti, spero qualcuno possa aiutarmi.
>
>  Di recente si e verificato un errore sul mio server: Zeo cluster non
> partiva, dopo vari tentativi ho controllato uno ad uno i prodotti installati
> e ho scoperto che la causa era plone.contentratings.
>
Quale era il traceback quando non partiva?
plone.contentratings è un prodotto molto maturo e (da qualche giorno) in
produzione su plone.org.
Mi sembrerebbe molto strano se contenesse errori grossolani.


>   Dopo aver rimosso il prodotto l'istanza è partita e il sito funziona MA:
> Zope management interface non va.
> Quinado la apro il panello di sinistra (quello con l'elenco delle voci) e
> bianco con solo la scritta
>
> ('iteration over non-sequence', , (, , )
>
> e se clicco lai voce Plone (il mio sito) nella parte di sinistra appare la
> pagina di plone che notifica il seguente errore:
>
> -------------------------- errore ---------------------
> Request URL
>        http://xxx.xxx.xxx.xxx/Plone/manage_main
> Exception Type Type
>        Error Exception
> Value
>        ('iteration over non-sequence', <function Provides at
> 0x7f428ed0a578>,
>                (
>                        <class
> 'Products.ATContentTypes.content.document.ATDocument'>,
>                         <InterfaceClass
> Products.CMFEditions.interfaces.IVersioned>,
>                         <class
> 'plone.contentratings.interfaces.IUnratable'>
>                )
>        )
> -------------------------- fine errore ---------------------
>

Questo tipo di errore mi sembra normale per un'istanza Plone a cui togli un
prodotto (da filesystem) senza prima disinstallarlo dal sito.
Ricorda sempre che pdb è tuo amico! Metti un try: con un set_trace nel punto
dove ti da errore, così puoi cercare di capire cosa è successo.
Non credo che lo ZODB sia 'corrotto', ma solo disallineato con la versione
che ha creato alcuni oggetti: ad esempio tutte le istanze di oggetti
definiti nel pacchetto plone.contentratings non potranno essere "riportate
in vita" se cancelli quel pacchetto.
Puoi anche usare
zc.beforestorage<http://pypi.python.org/pypi/zc.beforestorage>, repozo
(fai un backup e nel restore chiedi il ripristino a una certa data) o simili
(Jim Fulton ne cita alcuni qui
https://mail.zope.org/pipermail/zodb-dev/2009-December/013083.html ) per far
tornare lo zodb ad uno stato in cui sei sicuro che funzioni. Ovviamente
dovrai avviare il client zeo con le *stesse* versioni che avevi nel punto
nel tempo a cui stai facendo tornare lo zodb.

            Silvio
_______________________________________________
Plone-IT mailing list
[email protected]
http://lists.plone.org/mailman/listinfo/plone-it
http://www.nabble.com/Plone---Italy-f21728.html

Rispondere a