[Zope3-Users] ISession = cache problems - is this a bug?

kevin gill kevin at movieextras.ie
Wed May 21 08:06:31 EDT 2008


I have spent some time tracking down a cache problem that I have been
experiencing. My responses are not cached because a cookie is always set.

I use (a modified version of) a sessions credentials plugin to control
user access to the site.

This plugin in turn uses:

     session = ISession(request)

This triggers session.py which uses CookieClientIdManager method
getClientId().

http://svn.zope.org/zope.session/trunk/src/zope/session/http.py?rev=85933&view=auto

getClientId() sets the request id back into the response (unless third
party sessions are used).

        sid = self.getRequestId(request)
        if sid is None:
            if self.thirdparty:
                raise MissingClientIdException
            else:
                sid = self.generateUniqueId()

        if not self.thirdparty:                     *********
            self.setRequestId(request, sid)         *********

        return sid

I believe that the indentation is wrong on the lines marked and the
intention is that the requestId should be set if sid is None (not set).

If the code above is correct, then I will have do change over to a third
party session tracker.

Can anyone confirm whether this code is incorrect?

Thanks

Kevin




More information about the Zope3-users mailing list