[squeak-dev] Re: ANN: SqueakDBX

Esteban Lorenzano estebanlm at gmail.com
Wed Aug 20 19:00:16 UTC 2008


Hi,
The driver uses asynchronous calls for comunicating with it's 
respective engines, as far as the engine allow it, that's one of the 
powerful features it has.
This is how we think a query must be:

1. call to execute- an external call
2. wait for answer (a request to ask if there is already an answer, 
otherwise, yields for N time)- another external call
2.1. loop step 2 until there is an answer.
3. retrieve result rows, one by one -an external call each one

Of course, all of this calls are through FFI, and therefore, 
blocking... but is better to have many mini-blocks than just one large 
block.

That's the theory... right now, the fact is that very large operations 
on same connection are freezing the image... we are working on that :)

Cheers,
Esteban

On 2008-08-20 15:09:17 -0300, "Ramon Leon" <ramon.leon at allresnet.com> said:

> 
>>> So by using FFI it locks the VM and serializes all the
>> requests through a
>>> single pipe allowing a long running query to block all other queries
>>> essentially freezing the VM?
>> 
>> Depends on whether OpenDBX (or the driver) support asynchronous mode.
>> 
>> Cheers,
>> - Andreas
> 
> But of course, hence the question mark!
> 
> Ramon Leon
> http://onsmalltalk.com






More information about the Squeak-dev mailing list