[Zope] Database adapter connections

Michal Bukovjan bukovjan@mbox.dkm.cz
Fri, 15 Mar 2002 08:27:03 +0100


This is a cryptographically signed message in MIME format.

--------------ms010806090304000600020902
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

Dieter Maurer wrote:

>Michal Bukovjan writes:
> > I have a database adapter, Level3 (inheriting from Shared.DC.ZRDB.TM).
> > All documentation I have found claims that such an adapter should be 
> > able to open multiple connections to the database, I see always one though.
>You do not tell us, what database you are using.
>
>When, e.g., your Python DB API module is not multi-thread aware,
>then the Global Interpreter Lock is not released and only
>a single thread can run at a time.
>
>This is, e.g., a problem for ZODBCDA.
>
>
>Dieter
>
I was talking about my own hacked version of Interbase DA, that is 
gvibDA / gvib Python API module (also changed/hacked by me).

I am experimenting with this, resolving some threading issues, and try 
to get more performance.
I found that, for instance, Zope never looks at threadsafety variable 
defined by the API variable.

The API actually releases the Global Interpreter lock during longer 
lasting operations like fetch or execute  (if we are talking about 
Py_THREADS_ALLOW_BEGIN / END combos), but at any case, there is always 
only one physical connection (I can tell it by number of active DB 
server connections), which is being used by multiple Zope threads.

A second connection is never started, no matter how I changed the gvibDA 
/ gvib so far.

Michal

--------------ms010806090304000600020902
Content-Type: application/x-pkcs7-signature; name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="smime.p7s"
Content-Description: S/MIME Cryptographic Signature

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
6dC9JolbTAAAAAAAAA==
--------------ms010806090304000600020902--