[Zope3-dev] Re: using utilities/sites from threads in zope3

Jim Fulton jim at zope.com
Mon Jul 2 14:57:53 EDT 2007


What Tres said. :)

Jim

On Jun 29, 2007, at 8:54 AM, Tres Seaver wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Tim Stebbing wrote:
>> G'day,
>>
>> I've recently ran into a bit of a problem attempting to use  
>> threads in
>> zope 3.2.1, hooks.getSite() returns None, and any attempt to get a
>> utility results in a component lookup error within my threads.
>>
>> I've attempted to pass a site into a thread and set it with
>> hooks.setSite() but this is apparently not the way to go, I get the
>> feeling that a thread that needs access to things form the database
>> probably needs its own connection, context etc.
>
> Your worker thread almost certainly needs its own database
> connection(s):  applicaiton code typically relies on the isolation
> provided by connection-per-thread, which means that it is not  
> "safe" in
> general to share persistent objects between threads.
>
> Assuming that you do grab a connection and get its root object, you
> should then be able to traverse to your friendly local site manager,
> calling 'setSite' at *each* parent site manager you pass along the  
> way.
>
>> I'm aware of ITask's but unsure if developers are supposed to use  
>> them
>> for their own purposes? Do these handle setting up of contexts like
>> db, site, global utils etc? I've googled around a fair bit and been
>> over all the z3 doco, it would be great if there was a simple  
>> howto on
>> setting up a thread that would have the usual access to various
>> components.
>
>
> Tres.
> - --
> ===================================================================
> Tres Seaver          +1 540-429-0999          tseaver at palladion.com
> Palladion Software   "Excellence by Design"    http://palladion.com
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.6 (GNU/Linux)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
>
> iD8DBQFGhQEG+gerLs4ltQ4RAh6EAJ9DzBW20NPz4tAE3BydJ789Vokx0wCg2qMp
> yBB8XemrjD7dXPwwwz4y9Yo=
> =+iwh
> -----END PGP SIGNATURE-----
> _______________________________________________
> Zope3-dev mailing list
> Zope3-dev at zope.org
> Unsub: http://mail.zope.org/mailman/options/zope3-dev/jim%40zope.com
>

--
Jim Fulton			mailto:jim at zope.com		Python Powered!
CTO 				(540) 361-1714			http://www.python.org
Zope Corporation	http://www.zope.com		http://www.zope.org





More information about the Zope3-dev mailing list