<br><br><div class="gmail_quote">On Wed, Jan 13, 2010 at 12:00 AM, Andreas Raab <span dir="ltr"><<a href="mailto:andreas.raab@gmx.de">andreas.raab@gmx.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="im">Mariano Martinez Peck wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
That's exatly what it is explained in the slides, even with sequence diagrams.<br>
<br>
OpenDBX, when possible, uses asynchronous queries. This means that it just calls a function to send the query, and then, it loops asking "is it ready?" until the query is done So, we have "little locks". The goods news is that after asking, if there are other process in the queue, it should be processed. With this way we process several queries "at the same time.". Se the method DBXPlatform >> processNextResultSet: aConnection querySettings: aQuerySettings<br>
<br>
where we do: (code = OpenDBX resultTimeout) ifTrue: [ (Delay forMilliseconds: (aQuerySettings timeout asMiliseconds)) wait ].<br>
It is not the best solution, of course, but we are limited to FFI implementation.<br>
<br>
I said "OpenDBX, when possible" because it not depends only in OpenDBX but also in the client library. Some support this and some doesn't. But I think most engines support this. I know PostgreSQL does. BTW, which OS are you deploying on ?<br>
</blockquote>
<br></div>
RHEL 5.3 + unixODBC + MySQL. BTW, it's not as if ODBC doesn't support asynchronous operations either (see for example <a href="http://msdn.microsoft.com/en-us/library/ms713563%28VS.85%29.aspx" target="_blank">http://msdn.microsoft.com/en-us/library/ms713563%28VS.85%29.aspx</a>) </blockquote>
<div><br>Thanks for the link. I wasn't aware of that. However, do you know which function does the squeak ODBC driver calls ? because maybe there are asynchronous queries, but the driver is calling the synchronous ones.<br>
</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">if the drivers support it. Unfortunately, I've found that "if the driver supports it" means mostly flipping a coin.<br>
<br></blockquote><div><br>Yes, true. At least in OpenDBX it always tries to use them if possible. <br><br>I use to know (I asked OpenDBX developer) which backend and in which OS it could be asynchronous, but I don't find it. Maybe I should ask again. <br>
<br>Cheers<br><br>Mariano<br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Cheers,<br><font color="#888888">
- Andreas<br>
<br>
</font></blockquote></div><br>