Hi again,

I've this traceback using Zope 2.7.0 final:

Module ZPublisher.Publish, line 163, in publish_module_standard
      * Module ZPublisher.Publish, line 127, in publish
      * Module Zope.App.startup, line 203, in zpublisher_exception_hook
      * Module ZPublisher.Publish, line 104, in publish
      * Module Zope.App.startup, line 221, in commit
      * Module ZODB.Transaction, line 233, in commit
      * Module ZODB.Transaction, line 348, in _commit_objects
      * Module ZODB.Connection, line 435, in commit
        __traceback_info__: (('Products.Transience.TransientObject',
        'TransientObject'), '\x00\x00\x00\x00\x00\x00\x008', '')

The error is caused during the "auto refresh" hook.  If auto refresh is
disabled, all works fine.  I've seen that there is a bug in the
collector about this issue: http://zope.org/Collectors/Zope/1010

I've tryied to understand the problem.  It seems that now Trasicience
uses a different ZODB connection (using DBTab), and I think this is the
cause of the problem.  

In Zope/App/startup.py, there is the following lines:

    # Initialize the app object
    application = app()
    if Globals.DevelopmentMode:
        # Set up auto-refresh.
        from App.RefreshFuncs import setupAutoRefresh

This handles the autoRefresh machinery to the main Connection, but I've
not found anywhere the same has been done with temporary Connection.  

But in the ZODB/Connection.py there is a global_code_timestamp used to
compare all Connections _code_timestamp attribute.   

Then, when the Connection tries to commit, as the _code_timestamp of
Trasicience connection hasn't been updated, the problem appears.  Almost
is what I think.

If anybody can put me in the right direction I can try to provide a
patch.  What do you think ?  Which is the best way to solve this

Thanks a lot

Santi Camps

Zope-Dev maillist  -  [EMAIL PROTECTED]
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope )

Reply via email to