Forum OpenACS Development: Re: Deadlocks

Collapse
7: Re: Deadlocks (response to 4)
Posted by Gustaf Neumann on
Should we get it directly into the content_item__new plsql
function instead of calling it separately in TCL ?

In case it was not clear, my suggestion was to add the lock statement to the three mentioned stored procedures.

Collapse
8: Re: Deadlocks (response to 7)
Posted by Malte Sussdorff on
Gustaf, I totally understand what you suggested, these were two *new* deadlocks and actually caused by calling content::item::new and content::revision::new which has a separate db_dml for the locking.

I will but it directly into content_item__new and content_revision__new then.

We are not going to test 8.2beta3 as it is still beta and we are running a production system. On the development sites it never happens.

What are you using for stress tests ?

Collapse
9: Re: Deadlocks (response to 8)
Posted by Gustaf Neumann on
Having the locks in the tcl-layer does not necessarily help, when one stored procedures calls other stored procedures and bypasses the lock. This can certainly lead to the lock-conflict you are seeing.

I would expect that when you add the lock statement into the three (not two) mentioned stored procedures, the problem will go away (the lock statements can the be removed from the tcl code).

I can be certainly wrong with that assumption, which is purely hypothetical, since i have not tried to reproduce the error you are seeing (i have just a script for stress-testing xowiki).