C# has app domains for this basically light weight processes .

I mean all the code can be shared since it read only so you only need a new
heap/ memory region for the GC the cost of that cant be that high. Isnt the
C++ equivalent to a guaranteed state a process restart which is going to
cost a few cycles as well ( at least a fork or mmap) . Do Sql services
today use new processes for each transaction ? Last time i checked they
seem to just use a few processes and kept them alive a long time  but that
could have been under a weaker transactional model...


Ben


On Sun, Mar 25, 2012 at 8:15 AM, Jonathan S. Shapiro <[email protected]>wrote:

>  On Sat, Mar 24, 2012 at 7:51 PM, Bennie Kloosteman <[email protected]>wrote:
>
>>  Not sure why you would start a new process (VM) for a transaction
>> /query ....if you dont its merely a hash  look up to some pre compiled code.
>>
>
> Finding the code isn't the problem. Getting the initial state set is the
> problem.
>
> Remember that we are talking about code that runs *inside* the
> transaction on the database server. In order to preserve transactional
> isolation, each such piece of code needs to run in a fresh, "virgin"
> environment. Which means that you need a new JVM for each execution. Which
> means that you need to run all of the global initialization logic for that
> JVM. Which means all of the global initialization logic for the core
> libraries. Which is a *huge* amount of work. The research at IBM and
> elsewhere was to determine how much of that initialization could be
> pre-computed for a known JVM/library configuration.
>
>
_______________________________________________
bitc-dev mailing list
[email protected]
http://www.coyotos.org/mailman/listinfo/bitc-dev

Reply via email to