From: John V. S. <js...@gm...> - 2007-05-29 00:39:31
|
Julian Hyde wrote: > In our world they are not always sharable. And at this stage in the > process, we don't know whether they are sharable, because whether they > are sharable depends on the implementation chosen. In that case, the correct thing to do is to introduce an extension point in the session personality SPI, and leave the Farrago default as is (sharable). > What we actually needed here is exclsuve-wait option here: if someone > else is preparing the same SQL, don't pin their entry (because it might > be incomplete), and don't go and create your own, but wait until they > have finished preparing it. FarragoObjectCache sharable pin behavior is currently to pin the existing entry, and if it's still under construction, wait for the construction to complete. For an executable statement, construction is actually preparation. Search for constructionThread inside of FarragoObjectCache.pin. JVS |