[ZCM] [ZC] 848/ 8 Reject "Errors in Sessions"

Collector: Zope Bugs, Features, and Patches ... zope-coders-admin at zope.org
Tue Aug 31 02:14:09 EDT 2004


Issue #848 Update (Reject) "Errors in Sessions"
 Status Rejected, Zope/bug critical
To followup, visit:
  http://zope.org/Collectors/Zope/848

==============================================================
= Reject - Entry #8 by mcdonc on Aug 31, 2004 2:14 am

 Status: Pending => Rejected

Need to reject this bug, not because it's not still probably salient, but because its noted in several other collector issues, we needn't track it in that many places, and the original bug reporter hasn't responded since May.
________________________________________
= Comment - Entry #7 by mcdonc on May 17, 2004 4:45 am

I believe this is fixed in current CVS.  I will hold this particular issue open until we get confirmation from the bug reporters or until no response after some time (it's quite old). 
________________________________________
= Comment - Entry #6 by aleksey on Feb 24, 2004 11:32 am

Our customers asking me everyday about this problem. I have upgraded from Zope 2.6.4 to Zope 2.7.0 because of this issue. Still, this bug appears to be active. I will try to post in mailing lists, and possible will try to find the problem myself. Beacause it is very annoying problem. Here is another part of traceback (from python 2.3.3, Zope 2.7.0):

* Module ZPublisher.Publish, line 98, in publish
* Module ZPublisher.mapply, line 88, in mapply
* Module ZPublisher.Publish, line 39, in call_object
* Module OFS.DTMLMethod, line 126, in __call__
* Module DocumentTemplate.DT_String, line 474, in __call__
* Module Products.DotOrg.Pages.KContent, line 149, in __call__
* Module Products.DotOrg.Pages.KContent, line 194, in getEditInfo
* Module Products.DotOrg.Pages.KContent, line 506, in hasSessionData
* Module Products.Sessions.SessionDataManager, line 101, in hasSessionData
* Module Products.Sessions.SessionDataManager, line 175, in _hasSessionDataObject
* Module Products.Transience.Transience, line 838, in has_key
* Module Products.Transience.Transience, line 807, in get
KeyError: 1047409860
                                                                                                      

________________________________________
= Comment - Entry #5 by allison on Feb 19, 2004 12:15 pm

We make heavy use of session variables.  We are seeing this KeyError problem regularly (very roughly, 30 failures in 250000 tries).  As we depend upon the session variables for nearly everything, this is a BIG problem.

Zope 2.6.2b3, Python 2.1.3.  This Zope version as the LowConflictConnection disabled; this patch may help, but it clearly does not resolve this issue.

The failure occurs in a Python script which simply returns container.REQUEST['SESSION'][key].  A debug version that captures the exception reports that REQUEST 
is not in the local context.

________________________________________
= Comment - Entry #4 by aleksey on Feb 17, 2004 8:52 am

We are getting this error everyday, with Zope 2.6.4.

Also, it is mentioned at: http://www.zope.org/Products/Zope/2.6.4/CHANGES.txt

that it has been fixed since 2.6.2:

 Zope 2.6.2 beta 2
Bugs Fixed

    * TemporaryStorage (which is used by TemporaryFolder, and thus the default sessioning configuration) no longer uses a "LowConflictConnection" database connection. This fixes a bug in which data structures used for session housekeeping data could become desynchronized; the symptom for this was KeyErrors being raised from TransientObjectContainer's get method. As a result, many more conflicts will be raised under high session load, but desynchronization will not occur.

I am not sure what to do with that. I will try to apply the recommended patch at http://mail.zope.org/pipermail/zope-dev/2003-March/019116.html
but I am not sure it will apply since it is almost a year old. 

mcdonc: could you advice how to "make the temporary folder's connection a "normal" connection "? I will read more from maillists, but I was not able to understand it easily. 

thanks.

Alex

________________________________________
= Comment - Entry #3 by mcdonc on May 28, 2003 11:17 am

I have made the temporary folder's connection a "normal" connection (as opposed to a LowConflictConnection) for 2.6.2.  This should fix the KeyError out of 'get'.  I suspect a problem will remain under high load with a KeyError out of 'load', but I have not been able to reproduce this problem.
________________________________________
= Comment - Entry #2 by neaj on May 28, 2003 4:55 am

The discussion of this issue is at:
  http://mail.zope.org/pipermail/zope-dev/2003-March/019081.html
________________________________________
= Request - Entry #1 by Anonymous User on Mar 13, 2003 7:14 am

We've had 2 related problems with Sessions since upgrading to Zope-2.6.x (from 2.4.4). We cannot reproduce either one reliably, but they occur daily now on at least a couple of our live sites. And afterwards, any attempts at using Sessions raises one of the KeyError exceptions below. One other item of note is that these errors seems to have increased greatly in frequency recently when we added some calls to hasSessionData(). 

Please feel free to contact me if I can help in any way. I'm working on this full time until it gets fixed. I'll email updates on any progress I make.

Here are the 2 tracebacks:

Traceback #1 occurs most frequently. The KeyError's value is an unprintable string of non-ascii characters.

* Module ZPublisher.Publish, line 150, in publish_module
* Module ZPublisher.Publish, line 114, in publish
* Module The application server.App.startup, line 182, in zpublisher_exception_hook
* Module ZPublisher.Publish, line 98, in publish
* Module ZPublisher.mapply, line 88, in mapply
* Module ZPublisher.Publish, line 39, in call_object
* Module App.special_dtml, line 61, in __call__
* Module DocumentTemplate.DT_String, line 474, in __call__
* Module Products.Transience.Transience, line 342, in nudge
* Module Products.Transience.Transience, line 467, in _getCurrentBucket
* Module Products.TemporaryFolder.LowConflictConnection, line 34, in setstate
* Module Products.TemporaryFolder.TemporaryStorage, line 94, in load
KeyError:

Traceback #2 happens less frequently, though today it seemed like it was trying to catch up (3 of these today).

* Module ZPublisher.Publish, line 98, in publish
* Module ZPublisher.mapply, line 88, in mapply
* Module ZPublisher.Publish, line 39, in call_object
* Module OFS.DTMLMethod, line 126, in __call__
* Module DocumentTemplate.DT_String, line 474, in __call__
* Module Products.DotOrg.Pages.KContent, line 149, in __call__
* Module Products.DotOrg.Pages.KContent, line 194, in getEditInfo
* Module Products.DotOrg.Pages.KContent, line 506, in hasSessionData
* Module Products.Sessions.SessionDataManager, line 101, in hasSessionData
* Module Products.Sessions.SessionDataManager, line 175, in _hasSessionDataObject
* Module Products.Transience.Transience, line 838, in has_key
* Module Products.Transience.Transience, line 807, in get
KeyError: 1047409860 



==============================================================



More information about the Zope-Collector-Monitor mailing list