Re: [ZODB-Dev] tracking back to what code caused a conflicting object change

2010-07-28 Thread Marius Gedminas
A: Because it makes the logic of the discussion difficult to follow.
Q: Why shouldn't I top post?
A: No.
Q: Should I top post?

On Wed, Jul 28, 2010 at 04:19:29PM +0200, Adam GROSZER wrote:
> Hello Chris,
> 
> I guess the best solution to find places which change something would
> be to hook into persistent.Persistent._p_changed, but that might not
> be an easy solution, 'cause it's all C.

Set a breakpoint in ZODB.Connection.Connection.register, conditional on
the object being of an instance of class TransientObject.

> CW> PS: apologies for the inline forwarding, zope.org's MTAs are still 
> CW> incorrectly configured to reject messages forwarded as attachments...

I've no problems with inline forwarding.


I left the traceback here for context:

> CW> Traceback (innermost last):
> CW>Module Zope2.App.startup, line 173, in zpublisher_exception_hook
> CW>Module ZPublisher.Publish, line 121, in publish
> CW>Module Zope2.App.startup, line 240, in commit
> CW>Module transaction._manager, line 96, in commit
> CW>Module transaction._transaction, line 380, in commit
> CW>Module transaction._transaction, line 378, in commit
> CW>Module transaction._transaction, line 433, in _commitResources
> CW>Module ZODB.Connection, line 479, in commit
> CW>Module ZODB.Connection, line 1050, in _commit_savepoint
> CW>Module tempstorage.TemporaryStorage, line 202, in store
> CW> ConflictError: database conflict error (oid 0x046a, class
> CW> Products.Transience.TransientObject.TransientObject, serial this txn
> CW> started with 0x0387c9f23edea155 2010-07-27 10:26:14.735074, serial
> CW> currently committed 0x0387c9f28a1ff766 2010-07-27 10:26:32.373016)
> 
> CW> To my knowledge, the request that throws this isn't touching the session
> CW> or temp_folder, but I guess something is.
> 
> CW> How can I find out what code is actually touch this and so causing this
> CW> conflict?

Marius Gedminas
-- 
1 4m 5o 3l337! just got r00t on this k3wl site j00
sux0r5!


signature.asc
Description: Digital signature
___
For more information about ZODB, see the ZODB Wiki:
http://www.zope.org/Wikis/ZODB/

ZODB-Dev mailing list  -  ZODB-Dev@zope.org
https://mail.zope.org/mailman/listinfo/zodb-dev


Re: [ZODB-Dev] tracking back to what code caused a conflicting object change

2010-07-28 Thread Adam GROSZER
Hello Chris,

I guess the best solution to find places which change something would
be to hook into persistent.Persistent._p_changed, but that might not
be an easy solution, 'cause it's all C.

Wednesday, July 28, 2010, 4:03:05 PM, you wrote:

CW> Hi All,

CW> Forwarding here as there may be more people with the relevant knowledge
CW> around.

CW> So, the key thing I'm trying to find is what code is changing the 
CW> conflicting objects? (primarily since I'm not aware of any doing so, so
CW> it must be inadvertantly getting executed)

CW> Any ideas gratefully received!

CW> Chris

CW> PS: apologies for the inline forwarding, zope.org's MTAs are still 
CW> incorrectly configured to reject messages forwarded as attachments...

CW>  Original Message 
CW> Subject: [Zope] ConflictError from 
CW> Products.Transience.TransientObject.TransientObject
CW> Date: Tue, 27 Jul 2010 11:45:26 +0100
CW> From: Chris Withers 
CW> To: zope list user 

CW> Hi All,

CW> I have an old Zope 2.9.8 instance which has recently started throwing
CW> the following unresolved ConflictErrors:

CW> Traceback (innermost last):
CW>Module Zope2.App.startup, line 173, in zpublisher_exception_hook
CW>Module ZPublisher.Publish, line 121, in publish
CW>Module Zope2.App.startup, line 240, in commit
CW>Module transaction._manager, line 96, in commit
CW>Module transaction._transaction, line 380, in commit
CW>Module transaction._transaction, line 378, in commit
CW>Module transaction._transaction, line 433, in _commitResources
CW>Module ZODB.Connection, line 479, in commit
CW>Module ZODB.Connection, line 1050, in _commit_savepoint
CW>Module tempstorage.TemporaryStorage, line 202, in store
CW> ConflictError: database conflict error (oid 0x046a, class
CW> Products.Transience.TransientObject.TransientObject, serial this txn
CW> started with 0x0387c9f23edea155 2010-07-27 10:26:14.735074, serial
CW> currently committed 0x0387c9f28a1ff766 2010-07-27 10:26:32.373016)

CW> To my knowledge, the request that throws this isn't touching the session
CW> or temp_folder, but I guess something is.

CW> How can I find out what code is actually touch this and so causing this
CW> conflict?

CW> Chris

CW> -- 
CW> Simplistix - Content Management, Batch Processing & Python Consulting
CW>   - http://www.simplistix.co.uk
CW> ___
CW> Zope maillist  -  z...@zope.org
CW> https://mail.zope.org/mailman/listinfo/zope
CW> **   No cross posts or HTML encoding!  **
CW> (Related lists -
CW>   https://mail.zope.org/mailman/listinfo/zope-announce
CW>   https://mail.zope.org/mailman/listinfo/zope-dev ) Original 
CW> Message 
CW> Subject: [Zope] (also) ConflictError from 
CW> Products.Transience.Transience.Increaser
CW> Date: Tue, 27 Jul 2010 11:47:09 +0100
CW> From: Chris Withers 
CW> To: zope list user 
CW> References: <4c4eb8c6.8050...@simplistix.co.uk>

CW> Chris Withers wrote:
>> To my knowledge, the request that throws this isn't touching the session 
>> or temp_folder, but I guess something is.
>> 
>> How can I find out what code is actually touch this and so causing this 
>> conflict?

CW> In similar circumstances, I also see:

CW> Traceback (innermost last):
CW> Module Zope2.App.startup, line 173, in zpublisher_exception_hook
CW> Module ZPublisher.Publish, line 121, in publish
CW> Module Zope2.App.startup, line 240, in commit
CW> Module transaction._manager, line 96, in commit
CW> Module transaction._transaction, line 380, in commit
CW> Module transaction._transaction, line 378, in commit
CW> Module transaction._transaction, line 433, in _commitResources
CW> Module ZODB.Connection, line 479, in commit
CW> Module ZODB.Connection, line 1050, in _commit_savepoint
CW> Module tempstorage.TemporaryStorage, line 202, in store
CW> ConflictError: database conflict error (oid 0x29, class
CW> Products.Transience.Transience.Increaser, serial this txn started with
CW> 0x0387c9ffb271bc44 2010-07-27 10:39:41.822878, serial currently
CW> committed 0x0387ca0108963711 2010-07-27 10:41:02.012526)

CW> How can I find out what's going on to cause this conflict?

CW> Chris

CW> -- 
CW> Simplistix - Content Management, Batch Processing & Python Consulting
CW>   - http://www.simplistix.co.uk
CW> ___
CW> Zope maillist  -  z...@zope.org
CW> https://mail.zope.org/mailman/listinfo/zope
CW> **   No cross posts or HTML encoding!  **
CW> (Related lists -
CW>   https://mail.zope.org/mailman/listinfo/zope-announce
CW>   https://mail.zope.org/mailman/listinfo/zope-dev )



-- 
Best regards,
 Adam GROSZERmailto:agros...@gmail.com
--
Quote of the day:
The soldiers fight, and the kings are heroes. 
- Jewish Proverb 

___
For more information about ZODB, see the ZODB Wiki:
http://www.zope.org/Wikis/ZODB/

ZODB-Dev mailing li